結果
問題 | No.745 letinopia raoha |
ユーザー |
![]() |
提出日時 | 2018-04-01 23:06:21 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 2,917 bytes |
コンパイル時間 | 1,452 ms |
コンパイル使用メモリ | 160,692 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-06-26 06:05:17 |
合計ジャッジ時間 | 1,816 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 8 |
ソースコード
#include <bits/stdc++.h>#define rep(i,n) for(long long int (i)=0;(i)<(int)(n);(i)++)#define rrep(i,a,b) for(long long int i=(a);i<(b);i++)#define rrrep(i,a,b) for(long long int i=(a);i>=(b);i--)#define all(v) (v).begin(), (v).end()#define pb(q) push_back(q)#define P pair<int,int>#define Abs(a,b) max(a,b)-min(a,b)#define YES(condition) if(condition){cout << "YES" << endl;}else{cout << "NO" << endl;}#define Yes(condition) if(condition){cout << "Yes" << endl;}else{cout << "No" << endl;}#define Cout(x) cout<<(x)<<endl#define POSSIBLE(n) cout << ((n) ? "POSSIBLE" : "IMPOSSIBLE" ) << endl#define Possible(n) cout << ((n) ? "Possible" : "Impossible" ) << endl#define possible(n) cout << ((n) ? "possible" : "impossible" ) << endl#define Size(n) (n).size()typedef long long ll;using namespace std;const int INF = 1e9,MOD = 1e9 + 7;const ll LINF = 1e18;//long long int kaizyo(long long int hh){// cmp=1;//while(hh>1){// cmp=(cmp*hh)%MOD;//hh--;//}//return cmp;//}//long long int ruizyo(long long int aa, long long int bb){// if(aa==0){// return 1;//}//else if(aa%2==0){// long long int tt=ruizyo(aa/2,bb);//return (tt*tt)%MOD;//}//else{// return (ruizyo(aa-1,bb)*bb)%MOD;//}//}フェルマ-のア//while(x!=0){//sum+=x%10;// x/=10;//}//各桁の和//pair<int,int> p[100000];//P r[100000];//cin >> tmp;//p[i]=make_pair(tmp,i);//cout << p[i].second+1 << endl;//ペアの右側つまりiを出力//s.find(w[i])==string::npos//findの使い方//for(int i=0;i<n;i++){// b[i]=x%2;//x/=2;//}二進数//visited=vector<vector<bool>>(10,vector<bool>(10,false));アを全部falseにlong long int n,cnt=0,ans=0,a,b,c,d,cmp=50,cmpp=100,m,h,w,x,y,sum=0,pos;int dy[]={1,0,-1,0};int dx[]={0,1,0,-1};string alph("abcdefghijklmnopqrstuvwxyz"),s;bool fl=true;int main(void){cin.tie(0);ios::sync_with_stdio(false);cin >> a >> b >> c >> d;if(d>=10){Cout("Impossible");}else{Cout("Possible");while(1){if(b>=100){ans+=100*cmp;b-=100;cmp*=2;cmpp*=2;//Cout(ans);}else{ans+=b*cmp;//Cout(ans);if(a+b>100 && fl){ans+=(100-b)*cmpp;cmp*=2;cmpp*=2;a-=(100-b);b=0;fl=false;}else if(!fl&&a>=100){ans+=100*cmpp;a-=100;cmpp*=2;}else{ans+=a*cmpp;Cout(ans);return 0;}}}}return 0;}