import java.io.*;
import java.util.*;
public class SW1220 {
static StringBuilder sb = new StringBuilder();
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for (int t = 1; t <= 1; t++) {
int N = Integer.parseInt(br.readLine());
int[][] graph = new int[N][N];
int answer = 0;
for (int i = 0; i < N; i++) {
StringTokenizer st = new StringTokenizer(br.readLine());
for (int j = 0; j < N; j++) {
graph[i][j] = Integer.parseInt(st.nextToken());
}
}
// System.out.println(Arrays.deepToString(graph));
for (int i = 0; i < N; i++) {
List<Integer> list = new ArrayList<>();
for (int j = 0; j < N; j++) {
if (graph[j][i] != 0) {
list.add(graph[j][i]);
}
}
System.out.println("===========한행=============");
//남아있는경우
int size = list.size();
if (list.size() != 0) {
for (int k = 0; k < list.size(); k++) {
System.out.println("제거 전: " + list);
if (list.get(0) == 2) {
list.remove(0);
} else if (list.get(list.size() - 1) == 1) {
list.remove(list.size() - 1);
}
if (size == list.size()) break;
System.out.println("제거 후: " + list);
}
int nCount = Collections.frequency(list, 1);
int sCount = Collections.frequency(list, 2);
answer += Math.min(nCount, sCount);
System.out.println("answer: " + answer);
}
}
sb.append("#").append(t).append(" ").append(answer).append("\n");
}
System.out.println(sb);
}
}
import java.io.*;
import java.util.*;
public class SW1220 {
static StringBuilder sb = new StringBuilder();
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for (int t = 1; t <= 10; t++) {
int N = Integer.parseInt(br.readLine());
int[][] graph = new int[N][N];
int answer = 0;
for (int i = 0; i < N; i++) {
StringTokenizer st = new StringTokenizer(br.readLine());
for (int j = 0; j < N; j++) {
graph[i][j] = Integer.parseInt(st.nextToken());
}
}
for (int i = 0; i < N; i++) {
boolean isOne = false; //1다음 2가 나오는지 확인
for (int j = 0; j < N; j++) {
if (graph[j][i] == 1) {
isOne = true;
} else if (graph[j][i] == 2 && isOne) {
answer++;
isOne = false;
}
}
}
sb.append("#").append(t).append(" ").append(answer).append("\n");
}
System.out.println(sb);
}
}
풀이