본문 바로가기
반응형

백준27

백준 1005번 ACM Craft - python https://www.acmicpc.net/problem/1005 1005번: ACM Craft 첫째 줄에는 테스트케이스의 개수 T가 주어진다. 각 테스트 케이스는 다음과 같이 주어진다. 첫째 줄에 건물의 개수 N과 건물간의 건설순서 규칙의 총 개수 K이 주어진다. (건물의 번호는 1번부 www.acmicpc.net 시간 제한메모리 1 초 512 MB 문제 서기 2012년! 드디어 2년간 수많은 국민들을 기다리게 한 게임 ACM Craft (Association of Construction Manager Craft)가 발매되었다. 이 게임은 지금까지 나온 게임들과는 다르게 ACM크래프트는 다이나믹한 게임 진행을 위해 건물을 짓는 순서가 정해져 있지 않다. 즉, 첫 번째 게임과 두 번째 게임이 건물을 짓는.. 2022. 11. 3.
백준 23288번 | 주사위 굴리기 2 - python https://www.acmicpc.net/problem/23288 23288번: 주사위 굴리기 2 크기가 N×M인 지도가 존재한다. 지도의 오른쪽은 동쪽, 위쪽은 북쪽이다. 지도의 좌표는 (r, c)로 나타내며, r는 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로부터 떨어진 칸의 개수이다. 가장 왼 www.acmicpc.net 문제 크기가 N×M인 지도가 존재한다. 지도의 오른쪽은 동쪽, 위쪽은 북쪽이다. 지도의 좌표는 (r, c)로 나타내며, r는 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로부터 떨어진 칸의 개수이다. 가장 왼쪽 위에 있는 칸의 좌표는 (1, 1)이고, 가장 오른쪽 아래에 있는 칸의 좌표는 (N, M)이다. 이 지도의 위에 주사위가 하나 놓여져 있으며, 주사위의 각 면에는 1보다 크.. 2022. 10. 13.
백준 23291번 | 어항 정리 - python https://www.acmicpc.net/problem/23291 23291번: 어항 정리 마법사 상어는 그동안 배운 마법을 이용해 어항을 정리하려고 한다. 어항은 정육면체 모양이고, 한 변의 길이는 모두 1이다. 상어가 가지고 있는 어항은 N개이고, 가장 처음에 어항은 일렬로 바 www.acmicpc.net 문제 마법사 상어는 그동안 배운 마법을 이용해 어항을 정리하려고 한다. 어항은 정육면체 모양이고, 한 변의 길이는 모두 1이다. 상어가 가지고 있는 어항은 N개이고, 가장 처음에 어항은 일렬로 바닥 위에 놓여져 있다. 어항에는 물고기가 한 마리 이상 들어있다. 은 어항 8개가 바닥 위에 놓여있는 상태이며, 칸에 적힌 값은 그 어항에 들어있는 물고기의 수이다. 편의상 어항은 정사각형으로 표현했다. .. 2022. 10. 13.
백준 17142번 | 연구소 3 - python https://www.acmicpc.net/problem/17142 17142번: 연구소 3 인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 바이러스는 활성 상태와 비활성 상태가 있다. 가장 처음에 모든 바이러스는 비활성 상태이고 www.acmicpc.net 문제 인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 바이러스는 활성 상태와 비활성 상태가 있다. 가장 처음에 모든 바이러스는 비활성 상태이고, 활성 상태인 바이러스는 상하좌우로 인접한 모든 빈 칸으로 동시에 복제되며, 1초가 걸린다. 승원이는 연구소의 바이러스 M개를 활성 상태로 변경하려고 한다. 연구소는 크기가 N×N인 정사각형으로 나타낼 수 있으며, 정사각.. 2022. 10. 7.
백준 16234번 | 인구 이동 - python 문제 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모든 나라는 1×1 크기이기 때문에, 모든 국경선은 정사각형 형태이다. 오늘부터 인구 이동이 시작되는 날이다. 인구 이동은 하루 동안 다음과 같이 진행되고, 더 이상 아래 방법에 의해 인구 이동이 없을 때까지 지속된다. 국경선을 공유하는 두 나라의 인구 차이가 L명 이상, R명 이하라면, 두 나라가 공유하는 국경선을 오늘 하루 동안 연다. 위의 조건에 의해 열어야하는 국경선이 모두 열렸다면, 인구 이동을 시작한다. 국경선이 열려있어 인접한 칸만을 이용해 이동할 수 있으면, 그 나라를 오늘 하루 동안은.. 2022. 10. 7.
백준 1107번 | 리모컨 - python https://www.acmicpc.net/problem/1107 문제 수빈이는 TV를 보고 있다. 수빈이는 채널을 돌리려고 했지만, 버튼을 너무 세게 누르는 바람에, 일부 숫자 버튼이 고장났다. 리모컨에는 버튼이 0부터 9까지 숫자, +와 -가 있다. +를 누르면 현재 보고있는 채널에서 +1된 채널로 이동하고, -를 누르면 -1된 채널로 이동한다. 채널 0에서 -를 누른 경우에는 채널이 변하지 않고, 채널은 무한대 만큼 있다. 수빈이가 지금 이동하려고 하는 채널은 N이다. 어떤 버튼이 고장났는지 주어졌을 때, 채널 N으로 이동하기 위해서 버튼을 최소 몇 번 눌러야하는지 구하는 프로그램을 작성하시오. 수빈이가 지금 보고 있는 채널은 100번이다. 입력 첫째 줄에 수빈이가 이동하려고 하는 채널 N (0 ≤.. 2022. 9. 15.
[python]백준 21610번 - 마법사 상어와 비바라기 (feat. 삼성 SW 역량 테스트 기출 문제) https://www.acmicpc.net/problem/21610 21610번: 마법사 상어와 비바라기 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그 마법을 할 수 있다. 오늘 새로 배운 마법은 비바라기이다. 비바라기를 시전하면 하늘에 비구름을 만들 수 있다. 오늘은 비바라기 www.acmicpc.net 해당 문제를 푸는데 있어서 문제 이해를 하는데 어려움이 좀 있었고 다 구현한 뒤에도 시간 초과를 해결하는데 애를 먹었다. 최대한 함수를 이용하여 보기 쉽게 코드를 작성해봤는데 도움이 될 지 모르겠습니다. 아래 코드 참고 # d, s가 정해졌을 때 범위 안에서 움직이도록 만드는 함수 def moves(val, direction, sep, n): val = val + direction * se.. 2021. 12. 2.
[python]백준 14888번 - 연산자 끼워넣기(feat. 삼성 SW 역량 테스트 기출 문제) https://www.acmicpc.net/problem/14888 해당 문제를 풀어 나갈때 permutations를 이용하는 것은 알았는데 이를 중복 제거하는 법을 잘 몰라 좀 헤매는 문제였다. 그냥 set(permutations())를 쓰면 되는걸 알게 된 문제.. 아래 코드 참고 from itertools import permutations answer = [] # 입력 값 받는 곳 N = int(input()) numbers = list(input().split()) operates = list(map(int, input().split())) # 연산자 어떤게 포함되는 지 저장하는 곳 opers = [] # operates를 순회하면서 각 엽산자의 횟수만큼 저장 for idx in range(le.. 2021. 12. 2.
[python]백준 13458번 - 시험 감독 (feat. 삼성 SW 역량 테스트 기출 문제) 해당 문제는 브론즈 2 수준의 간단한(?) 문제인 것 같다. 저는 해당 문제를 주 각 강의실에 주 감독관이 감독할 수 있는 학생의 수를 먼저 제거한 뒤 나머지 학생애 대해서 필요한 부 감독관의 수를 구하는 방식으로 풀어 나갔습니다. 아래 코드 참조 answer = 0 # 입력을 받는 부분 N = int(input()) A = list(map(int, input().split())) B, C = map(int, input().split()) # 각 강의실 마다 학생 수를 확인하며 for student in A: # 먼저 감독관이 감독할 수 있는 학생의 수를 구하고 감독한 학생의 수를 빼준다 answer += 1 student -= B # 이후에 감독이 필요한 학생이 남는 경우, 부감독관의 수를 구하기 위한.. 2021. 11. 30.
반응형