結果
問題 |
No.2323 Nafmo、A+Bをする
|
ユーザー |
![]() |
提出日時 | 2023-05-28 14:07:01 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 981 bytes |
コンパイル時間 | 1,834 ms |
コンパイル使用メモリ | 194,660 KB |
最終ジャッジ日時 | 2025-02-13 10:51:50 |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 17 |
ソースコード
#include <bits/stdc++.h> using namespace std; using ll= long long; using ull=unsigned long long; using ldo =long double; #define rep(i,n,k) for(ll i = k; i < (ll)(n); i++) template<class T>bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; } template<class T>bool chmin(T &a, const T &b) { if (b<a) { a=b; return 1; } return 0; } const ll INF = 1e18; struct cww{cww(){ios::sync_with_stdio(false);cin.tie(0);}}star; int main() { string A,B,C=""; cin>>A; cin>>B; rep(i,max(A.size(),B.size())+1,1){ if(A.size()-i<0)C.push_back(B[A.size()-i]); else if(B.size()-i<0)C.push_back(A[B.size()-i]); else{ if((A[A.size()-i]==B[B.size()-i])and(A[A.size()-i]=='1')){ C.push_back('0'); }else if((A[A.size()-i]=='1')or('1'==B[B.size()-i])){ C.push_back('1'); }else{ C.push_back('0'); } } } ll a=0,now=1; rep(i,C.size(),0){ if(C[i]=='1')a+=now; now*=2; } cout<<a<<endl; return 0; }