結果
問題 | No.1458 Segment Function |
ユーザー |
|
提出日時 | 2021-03-31 22:20:45 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 82 ms / 2,000 ms |
コード長 | 758 bytes |
コンパイル時間 | 1,602 ms |
コンパイル使用メモリ | 169,232 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-10-12 13:36:38 |
合計ジャッジ時間 | 3,814 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 32 |
ソースコード
#include <bits/stdc++.h>#define rep(i, n) for (int i = 0; i < (int)(n); i++)using namespace std;typedef long long ll;int f(string S) {if (S == "0") return 6;if (S == "1") return 2;if (S == "2") return 5;if (S == "3") return 5;if (S == "4") return 4;if (S == "5") return 5;if (S == "6") return 6;if (S == "7") return 4;if (S == "8") return 7;if (S == "9") return 6;if (S[0] == '-') return 1 + f(S.substr(1, S.size() - 1));int ret = 0;rep(i, S.size()) ret += f(S.substr(i, 1));return ret;}int main() {string P, N;cin >> P >> N;int M;if (N.size() > 6) M = 1000000;else M = stoi(N);rep(i, M) {P = to_string(f(P));}cout << P << "\n";}