USACO 1.4 牛奶
生活随笔
收集整理的這篇文章主要介紹了
USACO 1.4 牛奶
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目:https://www.luogu.org/problemnew/show/P1215
令三元組(i,j,k)表示該情況是否出現(xiàn),即可防止死循環(huán)
注意0這個答案有可能是合法的,答案要加上
#include<cstdio> #include<iostream> #include<cstring> #include<algorithm> using namespace std; inline int read() {int ans = 0,op = 1;char ch = getchar();while(ch < '0' || ch > '9'){if(ch == '-') op = -1;ch = getchar();}while(ch >= '0' && ch <= '9'){(ans *= 10) += ch - '0';ch = getchar();}return ans * op; } bool ok[21][21][21]; bool e[21]; int a,b,c; void dfs(int i,int j,int k) {if(i < 0 || j < 0 || k < 0 || i > a || j > b || k > c) return;if(ok[i][j][k]) return;if(i == 0) e[k] = 1;ok[i][j][k] = 1;dfs(i - (b - j),b,k);dfs(0,i + j,k);dfs(i,j - (c - k),c);dfs(i,0,j + k);dfs(a,j,k - (a - i));dfs(i + k,j,0);dfs(a,j - a + i,k);dfs(i + j,0,k);dfs(i,b,k - b + j);dfs(i,j + k,0);dfs(i - c + k,j,c);//1 -> 3dfs(0,j,i + k); } int main() {a = read(),b = read(),c = read();dfs(0,0,c);for(int i = 0;i <= c;i++) if(e[i]) printf("%d ",i);return 0;}?
轉載于:https://www.cnblogs.com/LM-LBG/p/9973293.html
總結
以上是生活随笔為你收集整理的USACO 1.4 牛奶的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Flutter 下拉刷新花式玩法
- 下一篇: ubuntu18.04下安装tomcat