結果

問題 No.722 100×100=1000
ユーザー C6218expressswallow
提出日時 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
権限があれば一括ダウンロードができます

ソースコード

diff #

#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;
}


0