코딩 테스트/백준23 ZOAC 4 첫번쨰 코드 나는 가로, 세로 각각 등차수열이라 생각하여 계산한 후직사각형 모양으로 생각하여 가로와 세로를 곱하는 형식으로 계산하였다. 즉, 자리가 1씩 떨어져야 하면 공차를 2(1+1)로 생각하여 2x+1으로 일반화된 식을 생각한다.위 식은 x=0일때부터 성립하므로 최대 x값을 구한 후 1을 더해준다. 이렇게 가로와 세로의 x를 구한 후 두 값을 구한다. import sys input = sys.stdin.readline h, w, n, m = map(int, input().split()) y = (h-1) // (n+1) x = (w-1) // (m+1) print((y+1) * (x+1)) 통과!링크https://github.com/ornni/programmers/tree/main/%EB%B0%B1.. 2024. 11. 15. 삼각형과 세 변 첫번째 코드 문제 말대로 따라가면 된다!각각 삼각형의 세 변으로 할당한다.이떄 삼각형의 조건을 만족하는 경우로 먼저 시작해야 하므로, 정렬을 한 후에 각각 할당하면 이해가 편하다 조건1. 삼각형이 성립이 되는가?가장 긴 변이 나머지 두 변의 길이의 합보다 커야 한다. 조건2. 문제 속에 주어진 삼각형 이름 조건 부여 import sys input = sys.stdin.readline lengths = [] while True: a, b, c = map(int, input().split()) if a == 0 and b == 0 and c == 0: break else: lengths.append([a, b, c]) for now_lengths in len.. 2024. 11. 11. 호텔 방 번호 첫번째 코드 방 번호가 가능한 경우 1, 그렇지 못한 경우 0으로 구성하려 한다.이때 각각 원소를 세어 해당 원소의 개수가 2개 이상인 경우 0으로 바꾼다 (즉, 사용할 수 없는 방번호이다)n 이상, m이하의 숫자 중에서 1의 개수만 더한다. import sys input = sys.stdin.readline n, m = map(int, input().split()) room = [1] * 5001 for i in range(n, m+1): check = str(i) for j in check: if check.count(j) > 1: room[i] = 0 break answer = sum(room[n:m+1]) print(answe.. 2024. 9. 23. 사과 담기 게임 첫번째 코드 m의 시작점과 끝점을 이용하기로 했다. 윈도우? 투포인터? 같은 느낌으로!현대 떨어지는 곳이 m의 끝점보다 크다면 해당 차이만큼 움직이고!현재 떨어지는 곳이 m의 시작점보다 작다면 해당 차이만큼 움직이고!사이에 있다면 상관없음! (else 이후에 붙일 코드 없음!)총 움직인 개수 더하기! import sys input = sys.stdin.readline n, m = map(int, input().split()) j = int(input()) apple = [] for _ in range(j): apple.append(int(input())) m_start = 1 m_end = 1 + (m-1) count = 0 for i in apple: if i > m_end: .. 2024. 9. 20. 3의 배수 첫번째 코드 숫자를 하나하나 더해야 하므로, 문자열로 바꾼 후 각각 숫자를 더하고 한자리 숫자가 될 때까지 이 과정을 반복한다.그리고 위 과정이 진행된 숫자를 구한 후, 진행된 숫자를 출력한다. 한자리 수가 되었을 때, 해당 숫자가 3으로 나누어 떨어지면 YES를 출력, 아니면 NO를 출력한다. import sys input = sys.stdin.readline number = str(input())answer = 0 while len(number) != 1: Sum = 0 answer += 1 for i in number: Sum += int(i) number = str(Sum) print(answer) if int(number) % 3 == 0: pr.. 2024. 9. 16. 타일 채우기 4 첫번째 코드 넓이를 구한 후 타일의 크기의 넓이(1 * 2)로 나눈 몫을 구한다! import sys input = sys.stdin.readline n, m = map(int, input().split()) answer = n * m // 2 print(answer) 통과링크https://github.com/ornni/programmers/tree/main/%EB%B0%B1%EC%A4%80/Bronze/15700.%E2%80%85%ED%83%80%EC%9D%BC%E2%80%85%EC%B1%84%EC%9A%B0%EA%B8%B0%E2%80%854 programmers/백준/Bronze/15700. 타일 채우기 4 at main · ornni/programmersrepository for recording .. 2024. 6. 23. 이전 1 2 3 4 다음 728x90