Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
话说没有人和我一样觉得这是一个数论的问题么?这是泊松倒酒问题的一种吧?本弱菜YY了一套倒酒的方法,能AC,但是目前不能证明,sad。。。 1.首先小酒瓶为空的时候倒满。 2.大酒瓶满的时候倒空,再把小酒瓶中的酒倒入大酒瓶。 3.大酒瓶不满,小酒瓶不空的时候,分两种情况讨论: (1)小酒瓶的酒全倒入大酒瓶不会溢出,则将其全部倒入大酒瓶 (2)小酒瓶的酒全倒入大酒瓶会溢出,则倒入一部分至大酒瓶,使其恰好装满。 对于以上三种情况对应输出题目要求的内容,直至达到目标输出success。 代码如下: #include<iostream> using namespace std; int main() { int i,j,k,a,b,c; while(cin>>a>>b>>c) { i=j=k=0; while(j!=c) { if(j==b) { j=0; cout<<"empty B"<<endl; j+=i; cout<<"pour A B"<<endl; i=0; continue; } if(i==0) { i=a; cout<<"fill A"<<endl; continue; } if(j!=c) { if(j+i>b) { k=b-j; i-=k; j+=k; } else { j+=i; i=0; } cout<<"pour A B"<<endl; continue; } } cout<<"success"<<endl; } return 0; } 如果哪位神犇能证明之,不胜感激+膜拜,顺便求加我qq:970445054 Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator