2024 동계 모각코

모각코 1회차 - 1/6일, 19시~22시

nanocat 2025. 1. 6. 19:01

목표

코드트리 Intermediate Low 과정

Chapter 1. Simulation : 격자 안에서 완전 탐색, 회전 그리고 이동하는 법을 배우게 됩니다.

 

결과

 

격자 안에서의 완전탐색

 

최고의 33위치

n = int(input())
grid = [list(map(int, input().split())) for _ in range(n)]

# Write your code here!

# 입력 받은 격자
for i in range(n):
    try:
        coin = list(map(int, input().split()))
        for j in range(n):
            grid[i][j] = coin[j]
    except EOFError:
            break

# 탐색
max_coin = 0
cnt = 0

for i in range(n):
    for j in range(n):
        if (i + 2) < n and (j + 2) < n:
            for k in range(i, i + 3):
                for l in range(j, j + 3):
                    if grid[k][l] == 1:
                        cnt += 1
            if cnt > max_coin:
                max_coin = cnt
            cnt = 0
        else:
            continue

    
    

print(max_coin)

 

행복한 수열의 개수

n, m = map(int, input().split())
grid = [list(map(int, input().split())) for _ in range(n)]

# Write your code here!

# 격자 채우기

for i in range(n):
    try:
        seq = list(map(int, input().split()))
        for j in range(n):
            grid[i][j] = seq[j]
    except EOFError:
        break

# 행복한 수열 찾기
cnt_seq = 0

# 행 단위로 찾기
for i in range(n):
    row = grid[i]
    cnt_num = 0
    prev = 0
    for j in range(n):
        if j == 0:
            cnt_num = 1
        elif prev == row[j]:
            cnt_num += 1
        else:
            cnt_num = 1

        if cnt_num >= m:
            cnt_seq += 1
            break

        prev = row[j]
print(cnt_seq)
# 열 단위로 찾기
for i in range(n):
    cnt_num = 0
    prev = 0
    for j in range(n):
        if j == 0:
            cnt_num = 1
        elif prev == grid[j][i]:
            cnt_num += 1
        else:
            cnt_num = 1

        if cnt_num >= m:
            cnt_seq += 1
            break

        prev = grid[j][i]

print(cnt_seq)