Điểm:
1800 (p)
Thời gian:
1.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Cho một xâu \(S\) chỉ chứa ba kí tự a
và b
và c
. Bạn có thể thực hiện thao tác sau nhiều lần tùy ý hoặc không cần thao tác:
- Chọn \(i\) \((1 \le i \le |S|)\) mà \(S_i\) và \(S_{i+1}\) là hai kí tự khác nhau. Sau đó thay \(S_i\) và \(S_{i+1}\) bằng kí tự còn lại khác hai kí tự \(S_i\) và \(S_{i+1}\) (một trong ba kí tự
a
,b
,c
).
Biết rằng \(|S|\) là độ dài của xâu \(S\).
Yêu cầu: Bạn hãy đếm xem có bao nhiêu xâu khác nhau có thể tạo ra với các thao tác trên.
Input
- Chứa một xâu \(S\) duy nhất (độ dài của xâu \(S\) chứa hai kí tự trở lên và độ dài của xâu không quá \(2 \times 10^5\)).
Output
- In ra kết quả bài toán sau khi chia lấy dư cho \(998244353\).
Scoring
- Subtask \(1\) (\(30\%\) số điểm): Độ dài của xâu không quá \(11\).
- Subtask \(2\) (\(70\%\) số điểm): Không có ràng buộc gì thêm.
Example
Test 1
Input
abc
Output
3
Note
- Các xâu có thể tạo nên là:
abc
aaa
ccc
Bình luận