結果
問題 | No.428 小数から逃げる夢 |
ユーザー |
|
提出日時 | 2016-11-14 03:33:10 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 808 bytes |
コンパイル時間 | 646 ms |
コンパイル使用メモリ | 53,752 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-25 22:10:08 |
合計ジャッジ時間 | 2,547 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | WA * 100 |
ソースコード
#include "iostream" using namespace std; const long long int BORDER = 1000000000; int N; int up; long long int down[25]{123456789,101112131,415161718,192021222,324252627,282930313,233343536,373839404,142434445,4647484950,51525354,555657585,960616263,646566676,869707172,737475767,778798081,828384858,687888990,919293949,596979899,1}; int main() { cin >> N; if (down[0] * N >= BORDER) { up = down[0] * N / BORDER; down[0] = (down[0] * N) % BORDER; } for (int i = 1; i < 25; i++) { if (down[i] * N >= BORDER) { down[i - 1] += down[i] * N / BORDER; down[i] = (down[i] * N)%BORDER; for (int j = BORDER/10; j >= 1; j /= 10) { if (j > down[i]) { down[i - 1] *= 10; } } } } cout << up << "."; for (int i = 0; i < 25; i++) { cout << down[i]; } cout << "\n"; return 0; }