본문 바로가기

반응형

전체 글

(253)
[python/파이썬] 백준 1145 적어도 대부분의 배수 [문제 출처] https://www.acmicpc.net/problem/1145 1145번: 적어도 대부분의 배수 첫째 줄에 다섯 개의 자연수가 주어진다. 100보다 작거나 같은 자연수이고, 서로 다른 수이다. www.acmicpc.net [문제 풀이] 다섯 개의 자연수가 주어질 때, 이 수들 중 적어도 세 개의 수의 배수가 되는 수 중에 가장 작은 수를 구하는 문제이다. 주어진 자연수의 배수가 찾기 위해서 while문을 통해 1씩 수를 증가시키며 확인한다. 시작하는 수는 주어진 수 중에 가장 작은 수에서부터 시작한다. 그 후 1씩 증가시키며 주어진 수들로 나눠지는지 확인한 후 나눠진다면 cnt 값을 증가시켜 cnt 값이 3 이상일 때 while문을 멈추고 해당하는 수를 출력한다. num = list(m..
[python/파이썬] 백준 1223 주사위 [문제 출처] https://www.acmicpc.net/problem/1233 1233번: 주사위 지민이는 주사위 던지기 게임을 좋아하여 어느 날 옆에 있는 동호를 설득하여 주사위 던지기 게임을 하자고 하였다. 총 3개의 주사위가 있다. 그리고 이 주사위는 각각 S1(2 ≤ S1 ≤ 20), S2(2 ≤ S2 www.acmicpc.net [문제 풀이] 세 개의 주사위 S1, S2, S3가 있고, 각 주사위에 몇까지의 숫자가 적혀있는지 입력으로 주어진다. 만일 3 2 3이라고 주어지면 S1 주사위는 1부터 3까지의 숫자가, S2는 1부터 2까지, S3는 1부터 3까지의 숫자가 적혀있다. 이 주사위들을 굴려서 나올 수 있는 모든 경우의 수를 따져보고 각 경우의 합을 구했을 때 가장 자주 나오는 합을 구하는..
[python/파이썬] 백준 1159 농구 경기 [문제 출처] https://www.acmicpc.net/problem/1159 1159번: 농구 경기 상근이는 농구의 세계에서 점차 영향력을 넓혀가고 있다. 처음에 그는 농구 경기를 좋아하는 사람이었다. 농구에 대한 열정은 그를 막을 수 없었고, 결국 상근이는 농구장을 청소하는 일을 시작 www.acmicpc.net [문제 풀이] n명의 선수의 성이 주어질 때, 성의 첫 글자가 같은 선수를 찾는 문제이다. 5명 이상의 선수가 성의 첫 글자가 같다면 해당 글자를 출력하고, 5명 이상 첫 글자가 같은 경우가 없다면 PREDAJA를 출력한다. 출력할 수 있는 글자가 여러 개라면 사전 순으로 공백 없이 출력한다. 딕셔너리 자료형을 이용해서 선수의 성을 입력받고 해당 성의 첫 글자를 키로 그리고 값으로는 인원수..
[python/파이썬] 백준 1100 하얀 칸 [문제 출처] https://www.acmicpc.net/problem/1100 1100번: 하얀 칸 체스판은 8×8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램 www.acmicpc.net [문제 풀이] 1,3,5,7번째 줄에서는 1,3,5,7번째 칸이 하얀 칸이고, 2,4,6,8번째 줄에서는 2,4,6,8번째 칸이 하얀 칸이다. 하얀 칸에 있는 말의 개수를 세는 문제이므로, 모든 칸에 대해서 확인할 필요 없이 하얀 칸에 말의 여부만 확인하여 개수를 센 후에 출력한다. #1100 cnt = 0 for i in range(1,9): line = list(input())..
[python/파이썬] 백준 1057 토너먼트 [문제 출처] https://www.acmicpc.net/problem/1057 1057번: 토너먼트 김지민은 N명이 참가하는 스타 토너먼트에 진출했다. 토너먼트는 다음과 같이 진행된다. 일단 N명의 참가자는 번호가 1번부터 N번까지 배정받는다. 그러고 난 후에 서로 인접한 번호끼리 스타를 www.acmicpc.net [소스 코드1 - 틀렸습니다] n명의 참가자가 있을 때 두 사람이 몇 라운드에서 만나는지 알기 위해서는 2^i 만큼 묶어보면 알 수 있다. 예를 들어 n = 16 kim = 8 im = 9라고 할 때 (1) 2^1 1 2 / 3 4 / 5 6 / 7 8 / 9 10 / 11 12 / 13 14 / 15 16 (2) 2^2 1 2 3 4 / 5 6 7 8 / 9 10 11 12 / 13 14..
[python/파이썬] 백준 1193 분수찾기 [문제 출처] https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net [문제 풀이] 처음에는 진행 방향이 지그재그가 아닌 일방향인 줄 알고 풀었다가 답이 잘못 나와서 당황했던 문제이다. 1,2,3,,으로 진행되는 순서가 지그재그이니 이 점을 주의해서 문제를 이해해야 한다. 분수의 값은 행의 값이 분자로 열의 값이 분모로 나타나 있다. 따라서 n번째 숫자가 어느 위치에 있는지 알 수 있다면 분수의 값을 알 수 있다. line은 대각선으로 봤을 때 몇 번째 줄인 지를 나타내는 함수이고, end는 해당 line에서 가장 큰 수를 나타낸다. while문으로 n이 end값보다 작은지 큰지를 ..
[python/파이썬] 백준 1076 저항 [문제 출처] https://www.acmicpc.net/problem/1076 1076번: 저항 첫째 줄에 첫 번째 색, 둘째 줄에 두 번째 색, 셋째 줄에 세 번째 색이 주어진다. 위의 표에 있는 색만 입력으로 주어진다. www.acmicpc.net [문제 풀이] 저항의 값은 아래 표를 이용해서 구하는데 3개의 색깔로 표시된다. 첫 번째, 두 번째 색깔에 해당하는 값에 세 번째 색깔에 해당하는 곱을 해준다. 색 값 곱 black 0 1 brown 1 10 red 2 100 orange 3 1,000 yellow 4 10,000 green 5 100,000 blue 6 1,000,000 violet 7 10,000,000 grey 8 100,000,000 white 9 1,000,000,000 예를 들..
[python/파이썬] 백준 1284 집 주소 [문제 출처] https://www.acmicpc.net/problem/1284 1284번: 집 주소 재석이는 대문에 붙이는 (주소를 나타내는) 호수판 제작업체의 직원이다. 고객에게 전달할 호수판은 숫자와 숫자 사이 그리고 왼쪽 오른쪽으로 적당히 여백이 들어가 줘야하고 숫자마다 차지하 www.acmicpc.net [소스 코드] 예외 경우인 1과 0의 개수를 세어 각각 2와 4를 곱해 넓이에 더해주고, 나머지 숫자의 경우 3을 곱해 더해준다. 가장 왼쪽과 오른쪽, 그리고 각 숫자 사이의 여백도 빼지 않고 더해주어야 한다. #1284 while True: num = list(input()) if num[0] == '0': break width = len(num) + 1 #숫자 사이 여백 & 왼쪽 오른쪽 여백..

반응형