【求助】三维数组
查看原帖
【求助】三维数组
93731
闻染楼主2020/5/6 22:06

第3个点RE了不知道为啥qwq 本机跑出来的答案是对的qwq

#include <bits/stdc++.h>
using namespace std;

#define RE register

int f[20][20][20];
int w,x,h,q,x1,x2,yy,y2,z1,z2;

inline void fread(int &x){
    int f=1;
    x=0;
    char ch=getchar();
    while(ch<'0'||ch>'9'){
        if(ch=='-')f=-1;
        ch=getchar();
    }
    while(ch>='0'&&ch<='9'){
        x=(x<<1)+(x<<3)+(ch^48);
        ch=getchar();
    }
    x*=f;
}

int main(){
    //freopen("P5729_3.in","r",stdin);
    fread(w);
    fread(x);
    fread(h);
    fread(q);
    for(RE int i=1;i<=w;i++){
        for(RE int j=1;j<=x;j++){
            for(RE int k=1;k<=h;k++){
                f[i][j][k]=1;
            }
        }
    }
    for(RE int i=1;i<=q;i++){
        fread(x1);
        fread(yy);
        fread(z1);
        fread(x2);
        fread(y2);
        fread(z2);
        for(RE int u=x1;u<=x2;u++){
            for(RE int j=yy;j<=y2;j++){
                for(RE int k=z1;k<=z2;k++){
                    f[u][j][k]=0;
                }
            }
        }
    }
    int ans=0;
    for(RE int i=1;i<=w;i++){
        for(RE int j=1;j<=x;j++){
            for(RE int k=1;k<=h;k++){
                ans+=f[i][j][k];
            }
        }
    }
    printf("%d\n",ans);
    return 0;
}
2020/5/6 22:06
加载中...