[Silver III] 1로 만들기 - 1463 python
·
알고리즘/백준
[Silver III] 1로 만들기 - 1463문제 링크성능 요약메모리: 40224 KB, 시간: 464 ms분류다이나믹 프로그래밍제출 일자2025년 1월 20일 11:52:22문제 설명정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다.X가 3으로 나누어 떨어지면, 3으로 나눈다.X가 2로 나누어 떨어지면, 2로 나눈다.1을 뺀다.정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오.입력첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다.출력첫째 줄에 연산을 하는 횟수의 최솟값을 출력한다.접근 방식  이전 DP문제를 풀었을 때 다른분께서 DP테이블을 미리 만들고 하는게 좋다고 하셔서 한 번 시도..
[Silver III] 피보나치 함수 - 1003 python
·
알고리즘/백준
[Silver III] 피보나치 함수 - 1003문제 링크성능 요약메모리: 108384 KB, 시간: 88 ms분류다이나믹 프로그래밍제출 일자2025년 1월 16일 16:27:54문제 설명다음 소스는 N번째 피보나치 수를 구하는 C++ 함수이다.int fibonacci(int n) { if (n == 0) { printf("0"); return 0; } else if (n == 1) { printf("1"); return 1; } else { return fibonacci(n‐1) + fibonacci(n‐2); }}fibonacci(3)을 호출하면 다음과 같은 일이 일어난다.fibonacci(3)은 fibonacci(2..
[Bronze I] 최대공약수와 최소공배수 - 2609 python
·
알고리즘/백준
[Bronze I] 최대공약수와 최소공배수 - 2609문제 링크성능 요약메모리: 108384 KB, 시간: 96 ms분류유클리드 호제법, 수학, 정수론제출 일자2025년 1월 16일 15:42:00문제 설명두 개의 자연수를 입력받아 최대 공약수와 최소 공배수를 출력하는 프로그램을 작성하시오.입력첫째 줄에는 두 개의 자연수가 주어진다. 이 둘은 10,000이하의 자연수이며 사이에 한 칸의 공백이 주어진다.출력첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.결과 코드시간 복잡도는 둘 다 O(log n) 두 가지 코드1. 라이브러리 사용import mathA, B = map(int, input().split())print(math.gcd(A, B..
[Silver IV] 듣보잡 - 1764 python
·
알고리즘/백준
[Silver IV] 듣보잡 - 1764문제 링크성능 요약메모리: 129696 KB, 시간: 188 ms분류자료 구조, 해시를 사용한 집합과 맵, 정렬, 문자열제출 일자2025년 1월 15일 10:47:04문제 설명김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오.입력첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 알파벳 소문자로만 이루어지며, 그 길이는 20 이하이다. N, M은 500,000 이하의 자연수이다.듣도 못한 사람의 명단에는 중복되는 이름..
컴공편입생 공부일기
'알고리즘' 카테고리의 글 목록