結果
問題 | No.294 SuperFizzBuzz |
ユーザー | Grenache |
提出日時 | 2015-10-24 18:40:23 |
言語 | Java21 (openjdk 21) |
結果 |
AC
|
実行時間 | 158 ms / 5,000 ms |
コード長 | 1,251 bytes |
コンパイル時間 | 3,332 ms |
コンパイル使用メモリ | 75,808 KB |
実行使用メモリ | 57,208 KB |
最終ジャッジ日時 | 2023-10-11 08:12:07 |
合計ジャッジ時間 | 6,743 ms |
ジャッジサーバーID (参考情報) |
judge15 / judge14 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 158 ms
56,860 KB |
testcase_01 | AC | 156 ms
56,864 KB |
testcase_02 | AC | 156 ms
57,208 KB |
testcase_03 | AC | 156 ms
56,924 KB |
testcase_04 | AC | 155 ms
56,832 KB |
testcase_05 | AC | 156 ms
56,704 KB |
testcase_06 | AC | 157 ms
57,080 KB |
testcase_07 | AC | 156 ms
57,088 KB |
testcase_08 | AC | 157 ms
55,112 KB |
testcase_09 | AC | 150 ms
57,196 KB |
testcase_10 | AC | 157 ms
56,776 KB |
testcase_11 | AC | 153 ms
56,932 KB |
testcase_12 | AC | 153 ms
57,116 KB |
testcase_13 | AC | 158 ms
56,572 KB |
testcase_14 | AC | 156 ms
56,504 KB |
ソースコード
import java.util.Scanner; public class Main_yukicoder294_1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[][][] dp = new int[2][3][26]; dp[1][2][1] = 1; int[] d = {3, 5}; for (int i = 1; i < 25; i++) { for (int j = 0; j < 2; j++) { for (int k = 0; k < 3; k++) { for (int l = 0; l < 2; l++) { dp[l][(k + d[l]) % 3][i + 1] += dp[j][k][i]; } } } } int i = 0; int j = 0; int sum = 0; out: for (i = 1; i < 26; i++) { for (j = 0; j < 2; j++) { if (n - dp[j][sum][i] <= 0) { break out; } n -= dp[j][sum][i]; } } String ret = Integer.toString(d[j]); for (i--; i > 0; i--) { for (int k = 0; k < 2; k++) { if (n - dp[k][(sum + 6 - d[j]) % 3][i] <= 0) { sum -= d[j]; sum += 6; j = k; ret += d[k]; break; } else { n -= dp[k][(sum + 6 - d[j]) % 3][i]; } } } System.out.println(ret); sc.close(); } }