분류 전체보기
-
문제 길이가 N인 수열 S는 1 이상인 정수로 이루어져 있다. 수열 S에서 원하는 위치의 수를 최대 K번 삭제할 수 있다. 짝수로 이루어져 있는 연속한 부분 수열 중 가장 긴 길이 구하기 1
[백준] 22857 가장 긴 짝수 연속한 부분 수열 (small)문제 길이가 N인 수열 S는 1 이상인 정수로 이루어져 있다. 수열 S에서 원하는 위치의 수를 최대 K번 삭제할 수 있다. 짝수로 이루어져 있는 연속한 부분 수열 중 가장 긴 길이 구하기 1
2023.09.20 -
문제 N개의 파티장이 있다. 파티장 사이에는 일방통행 도로가 있고, 각 도로별로 이동하는데 걸리는 시간이 다르다. M명의 손님이 현재 위치한 A파티장에서 C시간 이후 파티가 열리는 B파티장까지 시간내에 도착할 수 있는지 확인하기 도착 가능하면 "Enjoy other party", 시간 내에 도착 못하면 "Stay here" 출력하기 5
[백준] 11265 끝나지 않는 파티문제 N개의 파티장이 있다. 파티장 사이에는 일방통행 도로가 있고, 각 도로별로 이동하는데 걸리는 시간이 다르다. M명의 손님이 현재 위치한 A파티장에서 C시간 이후 파티가 열리는 B파티장까지 시간내에 도착할 수 있는지 확인하기 도착 가능하면 "Enjoy other party", 시간 내에 도착 못하면 "Stay here" 출력하기 5
2023.09.19 -
문제 N크기의 정사각형 모양의 지도가 있고, 1은 집이 있는 곳을 0은 집이 없는 곳을 나타낸다. 집끼리 연결된 모임을 단지로 정의하고 단지에 번호를 붙이려고 한다. 각 단지에 속하는 집의 수를 오름차순으로 정렬해서 출력하기 5
[백준] 2667 단지번호붙이기문제 N크기의 정사각형 모양의 지도가 있고, 1은 집이 있는 곳을 0은 집이 없는 곳을 나타낸다. 집끼리 연결된 모임을 단지로 정의하고 단지에 번호를 붙이려고 한다. 각 단지에 속하는 집의 수를 오름차순으로 정렬해서 출력하기 5
2023.09.19 -
문제 8진수가 주어졌을 때, 2진수로 변환하기 1 10진수 정수를 2진수 문자열로 변환하기 2진수는 0b / 8진수는 0o / 16진수는 0x 로 시작하므로 두 개 문자를 제외하고 출력한다. N = int(input(), 8)# 8진수 입력받기 print(bin(N)[2:])# 2진수 출력하기 References 백준 구현
[백준] 1212 8진수 2진수문제 8진수가 주어졌을 때, 2진수로 변환하기 1 10진수 정수를 2진수 문자열로 변환하기 2진수는 0b / 8진수는 0o / 16진수는 0x 로 시작하므로 두 개 문자를 제외하고 출력한다. N = int(input(), 8)# 8진수 입력받기 print(bin(N)[2:])# 2진수 출력하기 References 백준 구현
2023.09.19 -
문제 유제품을 3개 한 번에 산다면 그 중 가장 싼 것은 무료로 받을 수 있다. N팩의 유제품을 구입하려고 할 때 최소 비용으로 유제품 구입하기 1
[백준] 11508 2+1 세일문제 유제품을 3개 한 번에 산다면 그 중 가장 싼 것은 무료로 받을 수 있다. N팩의 유제품을 구입하려고 할 때 최소 비용으로 유제품 구입하기 1
2023.09.19 -
문제 NxN 보드 위에 블록들이 배치된 채로 게임이 시작된다. 플레이어는 1x1 크기의 검은 블록을 떨어뜨려 쌓을 수 있다. 검은 블록과 기존에 놓인 블록을 합해 속이 꽉 채워진 직사각형을 만들 수 있다면 그 블록을 없앨 수 있다. 검은 블록을 떨어뜨려 없앨 수 있는 블록 개수의 최댓값을 구하라 4 해당 인덱스가 위에서 블록을 떨어드릴 수 있는 자리인지 확인하기 위에서 블록이 막고 있는지 확인하기 1,2,5,8,9,18,20 번만 통과 (35점) -> 블록을 제거하는 순서에 따른 변화가 있을 것으로 예상됨 from collections import defaultdict # 직사각형 만들 수 있는지 확인 def check_form(block, blank) : for b in blank : if (b[0]-..
[2019 KAKAO BLIND RECRUITMENT] 블록 게임문제 NxN 보드 위에 블록들이 배치된 채로 게임이 시작된다. 플레이어는 1x1 크기의 검은 블록을 떨어뜨려 쌓을 수 있다. 검은 블록과 기존에 놓인 블록을 합해 속이 꽉 채워진 직사각형을 만들 수 있다면 그 블록을 없앨 수 있다. 검은 블록을 떨어뜨려 없앨 수 있는 블록 개수의 최댓값을 구하라 4 해당 인덱스가 위에서 블록을 떨어드릴 수 있는 자리인지 확인하기 위에서 블록이 막고 있는지 확인하기 1,2,5,8,9,18,20 번만 통과 (35점) -> 블록을 제거하는 순서에 따른 변화가 있을 것으로 예상됨 from collections import defaultdict # 직사각형 만들 수 있는지 확인 def check_form(block, blank) : for b in blank : if (b[0]-..
2023.09.06