白準1992四叉木
https://www.acmicpc.net/problem/1992
銀2銀1銀3は同じレベルですほほほ
この問題の鍵は、圧縮できない場合は「(」で始まり、「)」で終わることです.
しゅろんり
1.1検査後、0または1に圧縮した値を加算して返す
1.2パスできない場合は、2番
import java.io.*;
import java.util.*;
public class 쿼드트리 {
static int[][] array;
static int N;
static StringBuilder sb;
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
N = Integer.parseInt(br.readLine());
array = new int[N][N];
for(int i=0;i<N;i++) {
String line = br.readLine();
for(int j=0;j<N;j++) {
array[i][j] = line.charAt(j)-'0';
}
}
sb= new StringBuilder();
cd(0,0,N);
System.out.println(sb);
}
public static void cd(int x,int y, int length) {
if(length==1) {
sb.append(array[x][y]);
return ;
}
int sum = 0;
for(int i=x;i<x+length;i++) {
for(int j=y;j<y+length;j++) {
sum += array[i][j];
}
}
if(sum==0) {
sb.append("0");
return;
}
if(sum==length*length) {
sb.append("1");
return;
}
int ql = length/2;
sb.append("(");
for(int i=0;i<2;i++) {
cd(x+(i*ql),y,ql);
cd(x+(i*ql),y+ql,ql);
}
sb.append(")");
}
}
アウトだ...1週間
もう一度頑張って走りましょう.
Reference
この問題について(白準1992四叉木), 我々は、より多くの情報をここで見つけました https://velog.io/@tekies09/백준-1992-쿼드트리テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol