USACO 1.4 Mother's Milk (枚举 + DFS)
来源:互联网 发布:类花生壳软件 编辑:程序博客网 时间:2024/05/19 09:03
#include <stdio.h>#define DEBUG 1#define TESTCASES 9#define MAX_CAPACITY 20int capacity[4];int visited[MAX_CAPACITY + 1][MAX_CAPACITY + 1];int count;void pour(int state[4]){int from, to;for (from = 1; from <= 3; from++)for (to = 1; to <= 3; to++){if (from == to)continue;int milk[4];int bucket;for (bucket = 1; bucket <= 3; bucket++)milk[bucket] = state[bucket];int temp = state[to] + state[from];if (temp > capacity[to]){milk[from] = temp - capacity[to];milk[to] = capacity[to];} else {milk[from] = 0;milk[to] = temp;}if (visited[ milk[1] ][ milk[3] ] == 1)continue;else {count++;visited[ milk[1] ][ milk[3] ] = 1;pour(milk);}}//end of for (to = 1; to <= 3; to++)}int main(){#if DEBUGint testCase;for (testCase = 1; testCase <= TESTCASES; testCase++){char inputFileName[20] = "inputx.txt";inputFileName[5] = '1' + (testCase - 1);freopen(inputFileName, "r", stdin);printf("\n#%d\n", testCase);#endifint bucket;for (bucket = 1; bucket <= 3; bucket++)scanf("%d", &capacity[bucket]);int capacityA = capacity[1];int capacityC = capacity[3];int milkA, milkC;for (milkA = 0; milkA <= capacityA; milkA++)for (milkC = 0; milkC <= capacityC; milkC++)visited[milkA][milkC] = 0;int initialState[4] = {0, 0, 0, capacity[3]};//可根据count判断最后应该输出空格还是回车count = 0;pour(initialState);for (milkC = 0; milkC <= capacityC; milkC++)for (milkA = 0; milkA <= capacityA; milkA++){if (visited[milkA][milkC] == 1 && milkA == 0){count--;printf("%d%c", milkC, count == 0 ? '\n' : ' ');break;}}#if DEBUG}#endifreturn 0;}
0 0
- USACO 1.4 Mother's Milk (枚举 + DFS)
- USACO 1.4 - Mother's Milk(DFS)
- USACO/Mother's Milk (DFS)
- [usaco]1.4 Mother’s Milk
- USACO 1.4 Mother's Milk
- USACO 1.4 Mother's Milk
- USACO 1.4-Mother's Milk
- USACO 1.4 Mother's Milk
- USACO 1.4 Mother's Milk
- USACO Section 1.4 - Mother's Milk(DFS + 记忆化)
- Mother's Milk(usaco)
- usaco Mother's Milk
- USACO:Mother's Milk
- USACO-Mother's Milk
- USACO Mother's Milk
- USACO Mother's Milk
- USACO Mother's Milk
- USACO: Mother's Milk
- Android 百度地图(一)——简单使用
- 数据库的简单操作
- SpringMVC与Struts2的对比
- Android 之自定义表情
- 忙并快乐着
- USACO 1.4 Mother's Milk (枚举 + DFS)
- Spark修炼之道(进阶篇)——Spark入门到精通:第七节 Spark运行原理
- 傅里叶分析之掐死教程(完整版)
- 八大排序算法
- 白盒测试的方法
- 文件流: ASCII 与 二进制
- 学习小记之VS2010 调试
- Android动画学习笔记-Android Animation
- LeetCode 6 ZigZag Conversion(Z型转换)(String)