답안 #18589

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
18589 2016-02-10T07:43:55 Z eaststar 일도양단! (kriii1_1) C++14
0 / 1
3 ms 16384 KB
#include <stdio.h>
#include <algorithm>
using namespace std;
int a[8][8][8],b[8][8][8][8][8][8];
int f(int sr,int er,int sc,int ec,int sh,int eh){
    int i,j,k,s,t,&mx=b[sr][er][sc][ec][sh][eh],cnt=0;
    if(mx)return mx;
    for(i=sr;i<=er;++i){
        for(j=sc;j<=ec;++j){
            for(k=sh;k<=eh;++k)cnt+=a[i][j][k];
        }
    }
    if(!cnt)return 0;
    if(cnt==1)return mx=(er-sr+1)*(ec-sc+1)*(eh-sh+1);
    for(i=sr;i<er;++i)mx=max(mx,min(f(sr,i,sc,ec,sh,eh),f(i+1,er,sc,ec,sh,eh)));
    for(i=sc;i<ec;++i)mx=max(mx,min(f(sr,er,sc,i,sh,eh),f(sr,er,i+1,ec,sh,eh)));
    for(i=sh;i<eh;++i)mx=max(mx,min(f(sr,er,sc,ec,sh,i),f(sr,er,sc,ec,sh,i+1)));
    return mx;
}
int main(){
    int i,r,c,h,n,x,y,z;
    scanf("%d%d%d%d",&r,&c,&h,&n);
    for(i=1;i<=n;++i)scanf("%d%d%d",&x,&y,&z),a[x][y][z]=1;
    printf("%d",f(1,r,1,c,1,h));
    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Memory limit exceeded 3 ms 16384 KB Memory limit exceeded
2 Halted 0 ms 0 KB -