今天是我打卡第三天,做个入门题吧(#^.^#)
题目描述
输入格式
输出格式
输出一个整数表示答案。
输入输出样例
输入 #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);
}
}