[24.02.21] CF Round 922 div. 2 upsolve +
·
PS 기록/내실 쌓기
A번은 문제를 잘 읽어봐야 한다. 굳이 N * M 넓이의 wall을 세로 벽돌까지 써서 채워야 할 필요가 없고 가로 벽돌만 채우면 된다.import sysinput = sys.stdin.readline T = int(input())for _ in range(T): N, M = map(int, input().split()) #가로(M) == K 일 때, 벽돌 N개 tmp = M//2*N print(max(N, tmp))  B번은 inversion을 최소화하는 문제이다. (i, j) 인덱스 순서쌍이 있고, i arr[j] 인 경우 inversion 상태라고 정의한다. 이 상태를 최소화 시키기 위해서 우리는 A arr, B arr에서 동시에 스왑을 해줘야한다. (i, j) -> (j,..
[24.02.20] CF Round 927 div. 3 virtual + Gold 한 문제 풀기
·
PS 기록/내실 쌓기
A번은 가시가 두 번 나오기 전까지 coin 개수를 더해주면 된다.import sysinput = sys.stdin.readline T = int(input()) for _ in range(T): N = int(input()) st = input().rstrip() cnt, flg = 0, 1 for i in range(N-1): if st[i] == '@': cnt += 1 if st[i] == '*' and st[i+1] == '*': flg = 0 break print(cnt+1 if flg and st[-1] == '@' else cnt) B번은 뇌 덜 깸 이슈로 문제 이해하는데 시간..
회고
·
PS 기록/내실 쌓기
보호되어 있는 글입니다.