結果
問題 | No.1740 Alone 'a' |
ユーザー | 👑 ygussany |
提出日時 | 2021-11-12 21:55:58 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 4 ms / 2,000 ms |
コード長 | 548 bytes |
コンパイル時間 | 263 ms |
コンパイル使用メモリ | 29,568 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-25 18:17:09 |
合計ジャッジ時間 | 1,164 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 38 |
ソースコード
#include <stdio.h> const int Mod = 998244353; int main() { int N; char S[200001]; scanf("%d", &N); scanf("%s", S); int i, flag = 0; long long pow[200001], ans = 0; for (i = 1, pow[0] = 1; i <= N; i++) pow[i] = pow[i-1] * 25 % Mod; for (i = 0; i < N; i++) { if (S[i] == 'a') { if (flag != 0) break; else flag = 1; } else { if (flag == 0) ans += (S[i] - 'b') * pow[N-i-2] % Mod * (N - i - 1) % Mod + pow[N-i-1]; else ans += (S[i] - 'b') * pow[N-i-1] % Mod; } } printf("%lld\n", ans % Mod); fflush(stdout); return 0; }