主页 > 创业  > 

每日一题-奶酪题(蓝桥杯)【模拟】

每日一题-奶酪题(蓝桥杯)【模拟】
题目要求

题目思路

假设有一个立方体奶酪,N=2 1✖1✖N的奶酪块有3种(x方向,y方向,z方向)

如果x方向上想放 1✖1✖N的奶酪块,需要x方向上的有连续n个奶酪块被切走。同理,y方向和z方向也一样

如果z方向的(x,y)后面的位置被切走一块,则a(x,y)++如果y方向的(x,z)后面的位置被切走一块,则b(x,z)++如果x方向的(y,z)后面的位置被切走一块,则c(y,z)++

当 a(x,y)=n->z方向的(x,y)可以放1✖1✖N的奶酪块 当 b(x,z)=n->y方向的(x,z)可以放1✖1✖N的奶酪块 当 c(y,z)=n->x方向的(y,z)可以放1✖1✖N的奶酪块

代码 #include<iostream> #include<cstring> #include<algorithm> using namespace std; const int N=1010; int n,m; int a[N][N],b[N][N],c[N][N]; int main(){ int res=0; int x,y,z; scanf("%d%d",&n,&m); while(m--){ scanf("%d%d%d",&x,&y,&z); a[x][y]++; b[x][z]++; c[y][z]++; if(a[x][y]==n){ res++; } if(b[x][z]==n){ res++; } if(c[y][z]==n){ res++; } printf("%d\n",res); } return 0; }

需要注意,a[x][y]==n,b[x][z]==n,c[y][z]==n不能放在一起,因为每个分开满足条件都是一种方案,如果放一起,方案数会减少

代码结果

标签:

每日一题-奶酪题(蓝桥杯)【模拟】由讯客互联创业栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“每日一题-奶酪题(蓝桥杯)【模拟】