[백준/BOJ][Python] 14503번 로봇 청소기 https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net 출력 로봇 청소기가 작동을 시작한 후 작동을 멈출 때까지 청소하는 칸의 개수를 출력한다. 예제 입력 1 3 3 1 1 0 1 1 1 1 0 1 1 1 1 예제 출력 1 1 예제 입력 2 11 10 7 4 0 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 ..
[백준/BOJ][Python] 2579번 계단 오르기 https://www.acmicpc.net/problem/2579 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 문제 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점수를 얻게 된다. 예를 들어 와 같이 시작점에서부터 첫 번째, 두 번째, 네 번째, 여섯 번째 계단을 밟아 도착점에 도달하면 총 점수는 10 + 20 + 25 + 20 = 7..
[백준/BOJ][Python] 24390번 또 전자레인지야? https://www.acmicpc.net/problem/24390 24390번: 또 전자레인지야? 첫 줄에 잇창명이 원하는 조리시간이 M:S 형태로 주어진다(0 ≤ M ≤ 60, 0 ≤ S ≤ 59). M은 분, S는 초이며, 항상 두 자리 숫자로 주어진다. 조리시간은 10초 이상 60분(3600초) 이하이며, 항상 10의 배수 www.acmicpc.net 문제 잇창명의 집에는 오래된 전자레인지가 있다. 백준 온라인 저지에서 문제를 너무 많이 푼 잇창명은 문득 이런 궁금증이 생기기 시작했다. 버튼을 최소 몇 번 눌러야 조리시간 2분을 맞출 수 있을까? 잇창명의 전자레인지에는 다음과 같이 버튼이 4개 있고, 각 버튼을 누르면 다음과 같이 작동한..
[백준/BOJ][Python] 16953번 A → B https://www.acmicpc.net/problem/16953 16953번: A → B 첫째 줄에 A, B (1 ≤ A < B ≤ 109)가 주어진다. www.acmicpc.net 문제 정수 A를 B로 바꾸려고 한다. 가능한 연산은 다음과 같은 두 가지이다. 2를 곱한다. 1을 수의 가장 오른쪽에 추가한다. A를 B로 바꾸는데 필요한 연산의 최솟값을 구해보자. 입력 첫째 줄에 A, B (1 ≤ A < B ≤ 109)가 주어진다. 출력 A를 B로 바꾸는데 필요한 연산의 최솟값에 1을 더한 값을 출력한다. 만들 수 없는 경우에는 -1을 출력한다. 예제 입력 1 2 162 예제 출력 1 5 2 → 4 → 8 → 81 → 162 예제 입력 2 4 42 ..
[백준/BOJ][Python] 11728번 배열 합치기 https://www.acmicpc.net/problem/11728 11728번: 배열 합치기 첫째 줄에 배열 A의 크기 N, 배열 B의 크기 M이 주어진다. (1 ≤ N, M ≤ 1,000,000) 둘째 줄에는 배열 A의 내용이, 셋째 줄에는 배열 B의 내용이 주어진다. 배열에 들어있는 수는 절댓값이 109보다 작거 www.acmicpc.net 아이디어 리스트 두 개 입력받고 합친 후에 정렬했다 코드 import sys input = sys.stdin.readline n, m = map(int, input().split()) A_list = list(map(int, input().split())) B_list = list(map(int, input..
[백준/BOJ][Python] 3273번 두 수의 합 https://www.acmicpc.net/problem/3273 3273번: 두 수의 합 n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 www.acmicpc.net 아이디어 2년 전 C++로 풀다가 시간 초과, 1년 전 python으로 풀다가 시간초과나서 묵혀뒀던 문제이다 (사실 3일 전에 풀었는데 이제야 올린다..ㅎ) 문제는 정말 간단하다. 배열 주어지고 x가 주어졌을 때 배열에서 합이 x가 되는 쌍의 개수를 구하면 된다. 근데 시간 초과인 이유는 ..
[백준/BOJ][Python] 1744번 수 묶기 https://www.acmicpc.net/problem/1744 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net 아이디어 양수는 내림차순, 음수는 오름차순으로 정렬하고 1이면 그냥 더하기, 음수가 짝수개이면 음수끼리 곱해서 더하기, 음수가 홀수개인데 0이 있으면 0 곱해서 더하기 그리고 리스트에서 이미 더한거는 1002로 처리 이런식으로 경우의 수를 모두 생각해서 풀었다!(정답코드1) 근데 더 쉬운 풀이가 있어서 다른 방법으로도 풀어봤다!!(정답코드2) 코..
[백준/BOJ][Python] 12847번 꿀 아르바이트 https://www.acmicpc.net/problem/12847 12847번: 꿀 아르바이트 월세를 내기 바로 전 날 까지 인 n (1 ≤ n ≤ 100,000) 일과 일을 할 수 있는 날 m (0 ≤ m ≤ n) 일이 주어진다. 그 다음 줄 에는 1일부터 n일 까지 일급 Ti가 순서대로 주어진다. (0 (10 + ..
[백준/BOJ][Python] 23827번 수열 (Easy) https://www.acmicpc.net/problem/23827 23827번: 수열 (Easy) 모든 원소가 양의 정수이고, 길이가 $N$인 수열 $A_1, A_2, ..., A_N$이 주어진다. $1 \le i < j \le N$을 만족하는 모든 정수쌍 $(i, j)$에 대해 $A_i \times A_j$의 합을 $1\, 000 \, 000 \, 007$로 나눈 나머지를 구하시 www.acmicpc.net 아이디어 https://dkan9634.tistory.com/220 [백준/BOJ][Python] 13900번 순서쌍의 곱의 합 [백준/BOJ][Python] 13900번 순서쌍의 곱의 합 https://www.acmicpc.net/pr..
[백준/BOJ][Python] 13900번 순서쌍의 곱의 합 https://www.acmicpc.net/problem/13900 13900번: 순서쌍의 곱의 합 첫 번째 줄에는 입력 받을 정수의 개수 N(2 ≤ N ≤ 100,000) 두 번째 줄에는 N 개의 정수가 주어진다. 이때 입력 받는 정수들의 범위는 0이상 10,000 이하이다. www.acmicpc.net 아이디어 문제를 보자마자 import sys input = sys.stdin.readline n = int(input()) arr = list(map(int, input().split())) sum = 0 for i in range(n-1): for j in range(i+1, n): sum += arr[i]*arr[j] print(sum) ..