結果

問題 No.3458 Scores of Subsequence
コンテスト
ユーザー msksknkn
提出日時 2026-03-14 20:41:51
言語 Java
(openjdk 25.0.2)
コンパイル:
javac -encoding UTF8 _filename_
実行:
java -ea -Xmx700m -Xss256M -DONLINE_JUDGE=true _class_
結果
AC  
実行時間 148 ms / 2,000 ms
コード長 637 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 1,901 ms
コンパイル使用メモリ 82,364 KB
実行使用メモリ 45,980 KB
最終ジャッジ日時 2026-03-14 20:41:57
合計ジャッジ時間 5,608 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 25
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

package no3458_scores_subSequence;
import java.util.*;
public class Main {
	static long MOD = 998244353;
	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		String s = sc.next();
		int n = s.length();
		int M = 0;
		long ans = 0;
		for(int i = 0;i < n;i++) {
			if(s.charAt(i) == 'A') {
				ans += pow(3,M);
			}else {
				M++;
			}
		}System.out.println(ans % MOD);
	}static long pow(long a,long b) {
		long ret = 1;
		long v = a;
		while(b > 0) {
			if((b & 1) != 0) {
				ret = ret * v % MOD;
			}v = v * v % MOD;
			b >>= 1;
		}return ret;
	}

}
0