結果
| 問題 |
No.158 奇妙なお使い
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-08-18 08:57:17 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 2,032 bytes |
| コンパイル時間 | 1,831 ms |
| コンパイル使用メモリ | 54,908 KB |
| 実行使用メモリ | 8,320 KB |
| 最終ジャッジ日時 | 2024-11-07 19:12:46 |
| 合計ジャッジ時間 | 7,901 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | -- * 4 |
| other | WA * 1 TLE * 1 -- * 25 |
ソースコード
#include <iostream>
using namespace std;
int a1,a2,a3,b1,b2,b3,c1,c2,c3,db,dc;
int x;
int calc1(int e1,int e2,int e3,int y){
int y2;
int xe1,xe2,xe3;
xe1=e1;
xe2=e2;
xe3=e3;
for(int i=e1; i>=0; --i){
for(int j=e2; j>=0; --j){
for(int k=e3; k>=0; --k){
if(i*1000+j*100+k==db){
xe1-=i;
xe2-=j;
xe3-=k;
xe1+=b1;
xe2+=b2;
xe3+=b3;
y2=y;
y2++;
if(y2>x) x=y2;
calc1(xe1,xe2,xe3,y2);
}
}
}
}
int xg1,xg2,xg3;
xg1=xe1;
xg2=xe2;
xg3=xe3;
for(int i=xe1; i>=0; --i){
for(int j=xe2; j>=0; --j){
for(int k=xe3; k>=0; --k){
if(i*1000+j*100+k==dc){
xg1-=i;
xg2-=j;
xg3-=k;
xg1+=c1;
xg2+=c2;
xg3+=c3;
y2=y;
y2++;
if(y2>x) x=y2;
calc1(xg1,xg2,xg3,y2);
}
}
}
}
return 0;
}
int calc2(int e1,int e2,int e3,int y){
int y2;
int xe1,xe2,xe3;
xe1=e1;
xe2=e2;
xe3=e3;
for(int i=e1; i>=0; --i){
for(int j=e2; j>=0; --j){
for(int k=e3; k>=0; --k){
if(i*1000+j*100+k==dc){
xe1-=i;
xe2-=j;
xe3-=k;
xe1+=c1;
xe2+=c2;
xe3+=c3;
y2=y;
y2++;
if(y2>x) x=y2;
calc2(xe1,xe2,xe3,y2);
}
}
}
}
int xg1,xg2,xg3;
xg1=xe1;
xg2=xe2;
xg3=xe3;
for(int i=xe1; i>=0; --i){
for(int j=xe2; j>=0; --j){
for(int k=xe3; k>=0; --k){
if(i*1000+j*100+k==db){
xg1-=i;
xg2-=j;
xg3-=k;
xg1+=b1;
xg2+=b2;
xg3+=b3;
y2=y;
y2++;
if(y2>x) x=y2;
calc2(xg1,xg2,xg3,y2);
}
}
}
}
return 0;
}
int main(){
cin>>a1>>a2>>a3;
cin>>db;
cin>>b1>>b2>>b3;
cin>>dc;
cin>>c1>>c2>>c3;
x=0;
if(db<=dc){
calc1(a1,a2,a3,0);
} else {
calc2(a1,a2,a3,0);
}
cout<<x<<endl;
return 0;
}