본문 바로가기

문제 풀이/백준37

[Python] 백준 1439 - 뒤집기 https://www.acmicpc.net/problem/1439 1439번: 뒤집기 다솜이는 0과 1로만 이루어진 문자열 S를 가지고 있다. 다솜이는 이 문자열 S에 있는 모든 숫자를 전부 같게 만들려고 한다. 다솜이가 할 수 있는 행동은 S에서 연속된 하나 이상의 숫자를 잡고 모 www.acmicpc.net 해결방법 제가 풀이한 해결 방법은 두 가지가 있습니다. 하나는 문자열을 전부 읽어 들이는 방법, 다른 하나는 split 함수를 이용하는 방법이 있습니다. 방법 1. import math string = input() L = len(string) cnt = 0 for i in range(L-1): if string[i] != string[i+1]: cnt += 1 cnt /= 2 print(math.. 2022. 5. 7.
[Python] 백준 9237 - 이장님 초대 https://www.acmicpc.net/problem/9237 해결방법 자라는 데에 가장 오래 걸리는 나무부터 가장 빠르게 자라는 나무순으로 배열을 정렬한다. 즉, 내림차순으로 정렬한다는 이야기이다. 나무 한 그루를 심는 데에 꼬박 하루씩이나 걸리니 1일부터 주어진 나무의 수만큼의 일수가 필요하다. 그리고 나무가 자라는 시간까지도 필요하다. 주어진 예제를 통해 이해해보자. 예제 입력 1 4 2 3 4 3 풀이 4그루의 나무를 심는다. 주어진 배열(나무가 자라는 데에 필요한 일 수)을 내림차순으로 정렬하면 [4, 3, 3, 2]가 되겠다. 다 자란 다음날에 이장님을 초대할 것이므로 첫 번째 나무는 1일에 심어지고 자라는 데에 4일이 더 걸리므로 6(5+1)일에, 두 번째 나무는 2일에 심어지고 자라는 .. 2022. 5. 6.
백준 1237 - 정ㅋ벅ㅋ https://www.acmicpc.net/problem/1237 1237번: 정ㅋ벅ㅋ우주를 정ㅋ벅ㅋ할 사람에게는 예제 입력과 예제 출력이 필요하지 않다.www.acmicpc.net난이도를 매길 수 없는 수수께끼 문제.문제 안에 있는 힌트를 찾아 풀이하면 된다. 아래는 정답입니다.더보기첫째 줄에 문제의 정답을 출력한다.즉 "문제의 정답"을 출력하면 된다.파이썬 기준 아래 소스코드가 정답 코드이다.print("문제의 정답") 2022. 5. 5.
[Python] 백준 1343 - 폴리오미노 https://www.acmicpc.net/problem/1343 1343번: 폴리오미노 첫째 줄에 사전순으로 가장 앞서는 답을 출력한다. 만약 덮을 수 없으면 -1을 출력한다. www.acmicpc.net 문제 민식이는 다음과 같은 폴리오미노 2개를 무한개만큼 가지고 있다. AAAA와 BB 이제 '.'와 'X'로 이루어진 보드판이 주어졌을 때, 민식이는 겹침없이 'X'를 모두 폴리오미노로 덮으려고 한다. 이때, '.'는 폴리오미노로 덮으면 안 된다. 폴리오미노로 모두 덮은 보드판을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 보드판이 주어진다. 보드판의 크기는 최대 50이다. 출력 첫째 줄에 사전순으로 가장 앞서는 답을 출력한다. 만약 덮을 수 없으면 -1을 출력한다. 폴리오미노란? 해결방법 및 코.. 2022. 5. 5.
[Python] 백준 1026 - 보물 https://www.acmicpc.net/problem/1026 문제 옛날 옛적에 수학이 항상 큰 골칫거리였던 나라가 있었다. 이 나라의 국왕 김지민은 다음과 같은 문제를 내고 큰 상금을 걸었다. 길이가 N인 정수 배열 A와 B가 있다. 다음과 같이 함수 S를 정의하자. S = A[0] × B[0] + ... + A[N-1] × B[N-1] S의 값을 가장 작게 만들기 위해 A의 수를 재배열하자. 단, B에 있는 수는 재배열하면 안 된다. S의 최솟값을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거나 같은 .. 2022. 5. 5.