結果
問題 |
No.722 100×100=1000
|
ユーザー |
|
提出日時 | 2018-08-03 22:50:03 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,034 bytes |
コンパイル時間 | 482 ms |
コンパイル使用メモリ | 63,976 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-10-12 10:40:32 |
合計ジャッジ時間 | 1,390 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | WA * 4 |
other | AC * 10 WA * 17 |
ソースコード
#include <iostream> #include<algorithm> #include <vector> #include<string> #include<cmath> #include<cstdio> using namespace std; typedef long long ll; typedef unsigned long long ull; #define max(x,y) (((x)>(y)) ? x:y) #define min(x,y) (((x)<(y)) ? x:y) #define FOR(a,b,c) for(b=(c);b<(a);b++) #define ender {return 0;} #define tosasuretu(a) (a*(a+1)/2) inline long kaizyo(long); int main() { ll a, b, ca, cb, ans; bool ay = false; bool by = false; cin >> a >> b; while (!(a%10==0)) { a /= 10; ca++; } if (a < 10) { ay = true; } while (!(b % 10 == 0)) { b /= 10; cb++; } if (a < 10) { ay = true; } if (ay && by) { ans = a * b; for (ll i = 0; i < (ca + cb - 1); i++) { ans *= 10; } } else { if (((a*b) <= 99999999) && ((a*b) >= -99999999)) { ans = a * b; } else { ans = -100000000; } } if (ans == -100000000) { cout << "E"; } else { cout << ans; } return 0; } inline long kaizyo(long x) { long ans = 1; for (int z = 0; z < x; z++) { ans *= (x - z); } return ans; }