알고리즘
-
[Baekjoon] 약수와 소수와 배수알고리즘/코딩테스트 문제 정리 2025. 2. 27. 15:01
단계별 풀이 중 9단계인 약수, 소수, 배수에 대한 알고리즘 풀이 과정에서 느낀 점 및 내 풀이 결과를 나타내었다. 해당문제: https://www.acmicpc.net/step/10🌈 파이썬 코드📦 5086 1번 문제문제 풀기 전 내 생각일단 입력부분에서 0 0이 오면 반복문을 종료하는 구문을 짜야겠고만. break와 같은 탈출문구? 를 넣으면 될 듯 factor인지 multiple인지 neither인지를 출력하는 함수를 만드는 게 목표def solution(): # 연산의 횟수가 정확히 정해지지 않았으므로 while while True: a, b = map(int, input().split()) # 탈출 구문 if a + b == 0: ..
-
소수 판별 알고리즘알고리즘/코딩테스트 개념 공부 2025. 2. 27. 13:11
내가 주로 소수를 판별하는데 사용할 방법은 √ 를 활용한 방법이다.이 방법에 대해서 원리가 어떻게 되는지 기억하고 나중에도 떠올릴 수 있도록 하자!. 🖥️ 동작 원리기본적으로 소수인지 알 수 있는 방법으로는 N이라는 수가 주어졌을 때 N과 1을 제외해서 이 N의 나머지를 0으로 만드는 값이 없다면 소수이다. 즉 11이라는 수가 주어졌을 때 1과 11을 제외하고 11을 나눌 수 없기에 11은 소수이고 12는 1, 2, 3, 4, 6으로 나뉘기에 소수가 아니다.그렇기에 위 원리를 통해서 소수를 판별하는 식은 아래와 같다.🌈 파이썬 코드def is_prime_number(N): for i in range(2, N): if N % i == 0: return False reutrn Tr..
-
수의 체계와 진법 변환알고리즘/코딩테스트 개념 공부 2025. 2. 26. 10:28
깊은 내용까지는 아니고 알고리즘을 풀 정도로 간단하게만 요약할 정도임..ㅎ수의 체계를 통해서 진법 변환을 어떻게 하면되는 건지 알아보자문제: 백준 2745번 🌈 파이썬 코드def solution(): chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" N, B = input().split() result = 0 for index, value in enumerate(N[::-1]): result += (chars.index(value) * (int(B) ** index)) return resultprint(solution()) 우리가 흔히 사용하는 10진법을 예시로 들어보자. 440이라는 10진법으로 표현된 수가 있..
-
[Baekjoon] 단계별 문제 - 2차원 배열알고리즘/코딩테스트 문제 정리 2025. 2. 25. 12:00
운 좋게도 정해진 시간 안에 단계별 문제 전부를 풀 수 있었다. 문제 난도도 낮고, 개수도 많지 않아서 그런 것 같다. 이 중에서 특히 몇 부분은 실수한 것도 있고 나중에 참고하면 좋을 내용도 있어서 정리해본다. 해당 문제: https://www.acmicpc.net/step/2🌈 파이썬 코드📦 2738 1번 문제# 행렬의 덧셈을 구하는 문제def solution(): row, col = map(int, input().split()) result = [] for i in range(row * 2): if len(result) >= row: newRow = list(map(int, input().split())) for j in ran..