結果
| 問題 | 
                            No.1088 A+B Problem
                             | 
                    
| ユーザー | 
                             | 
                    
| 提出日時 | 2022-09-30 21:33:18 | 
| 言語 | C++14  (gcc 13.3.0 + boost 1.87.0)  | 
                    
| 結果 | 
                             
                                WA
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 1,895 bytes | 
| コンパイル時間 | 1,706 ms | 
| コンパイル使用メモリ | 168,260 KB | 
| 実行使用メモリ | 5,248 KB | 
| 最終ジャッジ日時 | 2024-12-22 22:32:02 | 
| 合計ジャッジ時間 | 2,399 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge3 / judge5 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 1 WA * 1 | 
| other | AC * 3 WA * 7 | 
ソースコード
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ld = long double;
using pll = pair<ll,ll>;
#define rep(i,n) for (int i = 0; i < (n); i++)
#define rep1(i,n) for (int i = 1; i <= (n); i++)
#define all(a) begin(a), end(a)
// aよりもbが大きいならばaをbで更新する
// (更新されたならばtrueを返す)
template <typename T>
bool chmax(T &a, const T& b) {
  if (a < b) {
    a = b;  // aをbで更新
    return true;
  }
  return false;
}
// aよりもbが小さいならばaをbで更新する
// (更新されたならばtrueを返す)
template <typename T>
bool chmin(T &a, const T& b) {
  if (a > b) {
    a = b;  // aをbで更新
    return true;
  }
  return false;
}
ll modpow(ll a, ll b, ll m) {
	ll p = a;
	ll ans = 1;
	rep(i,32) {
		if ((b & (0x01 << i)) != 0) {
			ans *= p;
			ans %= m;
		}
		p *= p;
		p %= m;
	}
	return (ans);
}
ll pow(ll a, ll b) {
	ll p = a;
	ll ans = 1;
	rep(i,32) {
		if ((b & (0x01 << i)) != 0) {
			ans *= p;
		}
		p *= p;
	}
	return (ans);
}
ll Division(ll a, ll b, ll m) {
	return ((a * modpow(b, m - 2, m)) % m);
}
struct V {
	int x, y;
	V(int x=0, int y=0): x(x), y(y) {}
	V operator-(const V &a) const {
		return V(x-a.x, y-a.y);
	}
	int cross(const V &a) const {
		return x*a.y - y*a.x;
	}
	int ccw(const V &a) const {
		int area = cross(a);
		if (area > 0) return +1; // ccw
		if (area < 0) return -1; // cw
		return 0; // collinear
	}
};
int main() {
	string a, b;
	cin >> a >> b;
	string ans;
	int len_a = a.length();
	int len_b = b.length();
	int i = 0;
	int remain = 0;
	int ma = max(len_a, len_b);
	while (i < ma) {
		int x = remain;
		if (i < len_a) x += a[i] - '0';
		if (i < len_b )x += b[i] - '0';
		string add = to_string(x);
		ans += add;
		remain = x/10;
		i++;
	}
	if (remain) {
		string add = to_string(remain);
		ans += add;
	}
	// reverse(all(ans));
	cout << ans << endl;
	return 0;
}