社区讨论
0分球掉(MLE)
P1215[USACO1.4] 母亲的牛奶 Mother's Milk参与者 5已保存回复 5
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 5 条
- 当前快照
- 1 份
- 快照标识符
- @mjqz1yag
- 此快照首次捕获于
- 2025/12/29 17:44 2 个月前
- 此快照最后确认于
- 2026/01/01 19:10 2 个月前
0分球掉(MLE)
CPP#include<bits/stdc++.h>
#define int long long
using namespace std;
int A,B,C,b[10000];
int a[100][100][100];
int dfs(int x,int y,int z){
if(x==0)b[z]=1;
a[x][y][z]=1;
if(x!=0){
if(x+y<=B){
if(a[0][x+y][z]==0)dfs(0,x+y,z);
}
else{
if(a[x+y-B][B][z]==0)dfs(x+y-B,B,z);
}
if(x+z<=C){
if(a[0][y][z+x]==0)dfs(0,y,z+x);
}else{
if(a[x+z-C][y][C]==0)dfs(x+z-C,y,C);
}
}
if(y!=0){
if(x+y<=A){
if(a[x+y][0][z]==0)dfs(x+y,0,z);
}
else{
if(a[A][x+y-A][z]==0)dfs(A,x+y-A,z);
}
if(y+z<=C){
if(a[x][0][y+z]==0)dfs(x,0,y+z);
}
else{
if(a[x][z+y-C][C]==0)dfs(x,z+y-C,C);
}
}
if(z!=0){
if(x+z<=A){
if(a[x+z][0][y]==0)dfs(x+z,0,y);
}
else{
if(a[A][y][x+z-A]==0)dfs(A,y,x+z-A);
}
if(y+z<=B){
if(a[x][y+z][0]==0)dfs(x,y+z,0);
}
else{
if(a[x][B][y+z-B]==0)dfs(x,B,y+z-B);
}
}
}
signed main()
{
cin>>A>>B>>C;
dfs(0,0,C);
for(int i=0;i<=C+A+B;i++){
if(b[i]==1)cout<<i<<' ';
}
return 0;
}
回复
共 5 条回复,欢迎继续交流。
正在加载回复...