結果
問題 | No.25 有限小数 |
ユーザー |
|
提出日時 | 2023-03-17 21:32:09 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,367 bytes |
コンパイル時間 | 1,544 ms |
コンパイル使用メモリ | 166,608 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-09-18 10:18:44 |
合計ジャッジ時間 | 2,221 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 30 WA * 1 |
ソースコード
#include <bits/stdc++.h> using namespace std; typedef long long ll; ll gcd(ll a,ll b) { ll tmp; while(a) { tmp = b; b = a; a = tmp % a; } return b; } ll n, m; int main() { // freopen(".in", "r", stdin); // freopen(".out", "w", stdout); cin >> n >> m; ll t = gcd(n, m); n /= t; m /= t; if (m == 1) { while (n % 10 == 0) n /= 10; cout << n % 10; return 0; } ll _2 = 0, _5 = 0; while (m % 2 == 0) m /= 2, _2++; while (m % 5 == 0) m /= 5, _5++; if (m > 1) { cout << -1; return 0; } while (n % 10 == 0) n /= 10; n %= 10; while (_2--) { n *= 5; while (n % 10 == 0) n /= 10; n %= 10; } while (_5--) { n *= 2; while (n % 10 == 0) n /= 10; n %= 10; } cout << abs(n); return 0; } /* __------__ /~ ~\ | //^\\//^\| /~~\ || o| |o|:~\ | |6 ||___|_|_||:| \__. / o \/' | ( O ) /~~~~\ `\ \ / | |~~\ | ) ~------~`\ /' | | | / ____ /~~~)\ (_/' | | | /' | ( | | | | \ / __)/ \ \ \ \ \/ /' \ `\ \ \|\ / | |\___| \ | \____/ | | /^~> \ _/ < | | \ \ | | \ \ \ -^-\ \ | ) `\_______/^\______/ */