본문 바로가기
728x90
반응형

BOJ9

백준 16236 아기 상어 (골드 3) 백준 16236 아기 상어 (골드 3)링크: 16236 아기 상어접근 방법시뮬레이션 코드로 bfs로 반복하며 탐색하고 시뮬레이션 한다.소스 코드소스 코드: 시뮬레이션과 BFS 코드import sysfrom collections import deque# 입력N = int(input())graph = [list(map(int, input().split())) for _ in range(N)]def start_shark(): for i in range(N): for j in range(N): if graph[i][j] == 9: x = i # 시작 x 좌표 y = j # 시작 y 좌표 .. 2025. 7. 8.
백준 1269 대칭 차집합 백준 1269 대칭 차집합링크: 1269 대칭 차집합접근 방법(시간초과) 중복된 값을 제거하고 남은 원소의 개수를 센다.소스 코드 1 (시간초과)소스 코드: 92324784 제출# 입력A_num, B_num = map(int, input().split())A = [int(i) for i in input().split()]B = [int(i) for i in input().split()]# 중복된 값 제외duplicate_count = 0for a in A: if a in B: duplicate_count += 2print(A_num+B_num-duplicate_count)for 문으로 반복하면서 list 특성상 O(n)의 탐색이 소요되어 시간초과가 발생되는 것으로 추측for 문을 사용하.. 2025. 3. 31.
백준 25305 커트라인 백준 25305 커트라인링크: 25305 커트라인접근 방법리스트를 받아서 정렬 후 k 번째 점수를 출력소스 코드소스 코드: 92263137 제출N, k = map(int, input().split())score_list = [int(i) for i in input().split()]target_score = sorted(score_list, reverse=True)[k-1]print(target_score)결론이 문제의 난이도는 매우 쉬우므로 최대한 빠르게 코드를 작성하는 것을 목표로 하였다.최근 sorted() 가 오름차순으로 정렬한다는 것을 알고 있었기에 reverse 옵션을 사용하여 내림차순으로 정렬해 빠르게 풀었다. 2025. 3. 30.
백준 19532 수학은 비대면강의입니다 백준 19532 수학은 비대면강의입니다링크: 19532 수학은 비대면강의입니다접근 방법모든 경우의 수를 반복해서 해를 찾으면 종료소스 코드소스 코드: 92262854 제출import sysa, b, c, d, e, f = map(int, input().split())for x in range(-999, 1000): for y in range(-999, 1000): if a * x + b * y == c and d * x + e * y == f: print(x, y) sys.exit(0)결론브루트포스의 기본적인 문제로 가능한 모든 경우의 수를 반복하는 것을 목표로 한다.단 중복이 발생하면 안되고, 동일한 경우는 반복하지 않는 것을 주의하며 코드를 작.. 2025. 3. 30.
백준 14215 세 막대 백준 14215 세 막대링크: 14215 세 막대접근 방법가장 큰 값이 나머지 두 수의 합보다 작아질 때까지 반복소스 코드소스 코드: 92162494 제출# 입력a, b, c = map(int, input().split())# 입력 변환 후 계산number_list = sorted([a, b, c], reverse=True)while number_list[0] >= (number_list[1] + number_list[2]): number_list[0] -= 1print(sum(number_list))결론간단한 문제인데도 while 문에 들어갈 조건을 계속 수정했었다.어차피 컴파일은 무제한이니 결과가 잘 나올 때까지 반복하고는 하는데, 내가 고쳐야할 개발 방식 중 하나라고 생각된다.또한 개발 속도를.. 2025. 3. 28.
백준 5073 삼각형과 세 변 백준 5073 삼각형과 세 변링크: 5073 삼각형과 세 변접근 방법입력을 내림차순으로 정렬가장 긴 것을 기준으로 if 문으로 각 출력을 제어소스 코드소스 코드: 92117802 제출while True: len_list = [int(i) for i in input().split()] if sum(len_list) == 0: break len_list = sorted(len_list, reverse=True) if len_list[0] >= len_list[1] + len_list[2]: print("Invalid") elif len_list[0] == len_list[2]: print("Equilateral") elif len_list.. 2025. 3. 27.
728x90
반응형