結果
| 問題 |
No.722 100×100=1000
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-08-03 22:48:49 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,033 bytes |
| コンパイル時間 | 561 ms |
| コンパイル使用メモリ | 64,024 KB |
| 実行使用メモリ | 13,632 KB |
| 最終ジャッジ日時 | 2024-10-12 10:40:24 |
| 合計ジャッジ時間 | 4,154 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 WA * 3 |
| other | AC * 4 WA * 5 TLE * 1 -- * 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;
}