結果
| 問題 | No.747 循環小数N桁目 Hard |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-10-25 01:02:12 |
| 言語 | C++23(gcc16) (gcc 16.2.0 + boost 1.92.0 + ACL) |
| 結果 |
WA
不安定
|
| 実行時間 | - |
| コード長 | 1,189 bytes |
| 記録 | |
| コンパイル時間 | 8,306 ms |
| コンパイル使用メモリ | 435,812 KB |
| 実行使用メモリ | 9,924 KB |
| 最終ジャッジ日時 | 2026-10-25 01:02:28 |
| 合計ジャッジ時間 | 13,129 ms |
|
ジャッジサーバーID (参考情報) |
judge5_0 / judge7_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 100 WA * 20 |
ソースコード
// https://github.com/touma6174/competitive-programming-library.git
#ifdef ONLINE_JUDGE
#pragma GCC target("avx2")
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#endif
#include <bits/stdc++.h>
#include <atcoder/all>
#define rep(i, n) for (int i = 0; i < (int)(n); ++i)
#define rep2(i, s, n) for (int i = (s); i < (int)(n); ++i)
using namespace std;
using ll = long long;
int mod(vector<int> &a, int b)
{
int tmp = 0;
rep(i, a.size())
{
tmp = tmp * 10 + a[i];
if (tmp < b)
continue;
tmp %= b;
if (i > 0)
a[i - 1] = 0;
a[i] = tmp;
}
return a[a.size() - 1];
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
constexpr int nums[] = {4, 2, 8, 5, 7, 1};
string N_str, K_str;
cin >> N_str >> K_str;
vector<int> N_vec(N_str.size()), K_vec(K_str.size());
rep(i, N_str.size())
{
N_vec[i] = N_str[i] - '0';
}
rep(i, K_str.size())
{
K_vec[i] = K_str[i] - '0';
}
int N = mod(N_vec, 6);
int K = mod(K_vec, 6);
int n = 1;
rep(i, K)
{
n *= N;
}
n %= 6;
cout << nums[n] << endl;
}