今天是我打卡第三天,做个入门题吧(#^.^#)
原题链接:【深基5.例7】工艺品制作 - 洛谷
题目描述
输入格式
输出格式
输出一个整数表示答案。
输入输出样例
输入 #1
4 4 4
1
1 1 1 2 2 2
输出 #1
56
说明/提示
C++:
#include<bits/stdc++.h>
using namespace std;
long long a[100][100][100],sum=0,w,x,h,q,x1,y1,z1,x2,y2,z2;
int main(){cin>>w>>x>>h>>q;while(q--){cin>>x1>>y1>>z1>>x2>>y2>>z2;for(int i=x1;i<=x2;i++){for(int j=y1;j<=y2;j++){for(int k=z1;k<=z2;k++){a[i][j][k] = 1;}}}}for(int i=1;i<=w;i++){for(int j=1;j<=x;j++){for(int k=1;k<=h;k++){if(a[i][j][k] == 0){sum++;}}}}cout<<sum;return 0;
}
Python:
w,x,h=[int(i) for i in input().split()]
v=list(range(w*x*h))
q=int(input())
qz=list(range(q))
for i in range(q):qz[i]=[int(i) for i in input().split()]
for i in range(1,1+w):for j in range(1,1+x):for k in range(1,1+h):for z in range(q):if qz[z][0]<=i and qz[z][3]>=i and qz[z][1]<=j and qz[z][4]>=j and qz[z][2]<=k and qz[z][5]>=k:v[w*x*(k-1)+w*(j-1)+i-1]=-1
n=0
for i in v:if i>=0:n+=1
print(n)
Java:
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;
public class Main {public static void main(String[] args) throws IOException {StreamTokenizer st=new StreamTokenizer(new InputStreamReader(System.in));st.nextToken();int w=(int) st.nval;st.nextToken();int x=(int) st.nval;st.nextToken();int h=(int) st.nval;st.nextToken();int q=(int) st.nval;int fang[][][]=new int[w+1][x+1][h+1];for(byte m=0;m<q;m++) {st.nextToken();int a=(int) st.nval;st.nextToken();int b=(int) st.nval;st.nextToken();int c=(int) st.nval;st.nextToken();int d=(int) st.nval;st.nextToken();int e=(int) st.nval;st.nextToken();int f=(int) st.nval;for(int i=a;i<=d;i++) {for(int j=b;j<=e;j++) {for(int k=c;k<=f;k++) {fang[i][j][k]=1;}}}}int sum=0;for(int i=1;i<=w;i++) {for(int j=1;j<=x;j++) {for(int k=1;k<=h;k++) {if(fang[i][j][k]==1) {sum++;}}}}int summ=w*x*h-sum;System.out.println(summ);}
}