UVA - 571 - Jugs (数论 - 经典倒水问题)

来源:互联网 发布:it人才培训机构 编辑:程序博客网 时间:2024/05/29 00:34

题目传送:UVA - 571


思路:A为空时就加满,不空就倒给B,B满了后就全倒掉,直到B的容量为n(参考)


AC代码:

#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#include <cmath>#include <queue>#include <stack>#include <vector>#include <map>#include <set>#include <deque>#include <cctype>#define LL long long#define INF 0x7fffffffusing namespace std;int main() {int a, b, ca, cb, n;while(scanf("%d %d %d", &ca, &cb, &n) != EOF) {a = 0, b = 0;while(1) {if(b == n) {printf("success\n");break;}else if(b == cb) {printf("empty B\n");b = 0;}else if(a == 0) {printf("fill A\n");a = ca;}else if(a != 0) {printf("pour A B\n");if(a + b <= cb) {b += a, a = 0;}else a = a + b - cb, b = cb;}}} return 0;}









0 0
原创粉丝点击