티스토리 툴바

자유치's 스킨공방

#include <stdio.h>

int d_table[1001][1001];
int table[1001][1001];
int down_table[1001][1001];
int right_table[1001][1001];
int n,m;
int max;

FILE *in=fopen("input.txt","r");
FILE *out=fopen("output.txt","w");

int s_min(int a,int b, int c){
int re_val = a;
if(re_val > b)
re_val = b;
if(re_val > c)
re_val = c;
return re_val;
}
int main(){
int i,j,t_in1,t_in2;

fscanf(in,"%d %d",&n,&m);

for(i=0;i<m;i++){
fscanf(in,"%d %d",&t_in1,&t_in2);
table[t_in1][t_in2] = 1;
}

for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
if(table[i][j]==1){
down_table[i][j] = 0;
right_table[i][j] = 0;
}
else {
down_table[i][j] = down_table[i-1][j]+1;
right_table[i][j] = right_table[i][j-1]+1;
}
}
}


for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
d_table[i][j] = s_min(down_table[i][j], right_table[i][j], d_table[i-1][j-1]+1);
if(d_table[i][j] > max)
max = d_table[i][j];
}
}


fprintf(out,"%d",max);
return 0;
}
크리에이티브 커먼즈 라이선스
Creative Commons License

'Programming' 카테고리의 다른 글

정사각형목장만들기  (0) 2012/02/23
Dijktra  (3) 2009/03/03
[UVA 10000] Longest Paths  (6) 2007/07/26
[UVA 10082] WERTYU  (0) 2007/07/26
[UVA 10782] Send More Money  (0) 2007/07/26
[PKU 1002] 487-3279  (2) 2007/04/12
Posted by 자유치