辗转相减,新手入门题。两个容量的灌水题,无所谓最优解。
1 #include<stdio.h> 2 3 int main(){ 4 int A,B,T,sA,sB; 5 while(scanf("%d %d %d",&A,&B,&T)>=0){ 6 sA=sB=0; 7 while(1){ 8 if(sA==0){ 9 printf("fill A\n"); 10 sA=A; 11 } 12 else{ 13 printf("pour A B\n"); 14 sB+=sA; 15 if(sB>=B){ 16 if(B!=T){ 17 printf("empty B\n"); 18 sA=sB-B; 19 sB=0; 20 } 21 else 22 sB=B; 23 } 24 else 25 sA=0; 26 } 27 if(sB==T){ 28 printf("success\n"); 29 break; 30 } 31 } 32 } 33 return 0; 34 }
时间: 2024-09-30 08:30:27