정화 코딩

EDOC 2024-1 3회차 정모 (조합 알아보기 2) 본문

Group/EDOC

EDOC 2024-1 3회차 정모 (조합 알아보기 2)

jungh150c 2024. 4. 7. 16:28

A. 베라의 패션 (백준 15439번)

 

https://www.acmicpc.net/problem/15439

 

#python

import sys
input = sys.stdin.readline

n = int(input())
ans = n * (n - 1)

print(ans)

(정답)

 


 

C. 격자상의 경로 (백준 10164번)

 

 

#python

import sys
input = sys.stdin.readline

n, m, k = map(int, input().split())
dp = [[0 for _ in range(n + m - 1)] for _ in range(n + m - 1)]
ans = 0

dp[0][0] = 1
for i in range(1, n + m - 1):
    dp[i][0] = dp[i][i] = 1
    for j in range(1, i):
        dp[i][j] = dp[i - 1][j - 1] + dp[i - 1][j]

if k == 0:
    ans = dp[n + m - 2][n - 1]
else:
    r = k // m + 1
    c = k % m
    ans = dp[r + c - 2][r - 1] * dp[n - r + m - c][n - r]

print(ans)

# 이렇게 하면 벽에 동그라미가 벽에 인접하면 곱해서 0이 나옴

(오답)

 

#python

import sys
input = sys.stdin.readline

n, m, k = map(int, input().split())
map = [[1 for _ in range(m + 1)] for _ in range(n + 1)]

for i in range(2, n + 1):
    for j in range(2, m + 1):
        map[i][j] = map[i - 1][j] + map[i][j - 1]

if k == 0:
    print(map[n][m])
else:
    r = k // m + 1
    c = k % m
    print(map[r][c] * map[n - r + 1][m - c + 1])

(오답)

 

Comments