목록개발 공부 (60)
내 맴

문제 ) https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 풀이 ) N! = N x (N-1) x (N-2) x ........ x 2 x 1 ✔ for문으로 코딩할 수도 있고 재귀함수로 코딩할 수도 있다. - python code 1 ( Recursive ) - python code 2 ( Iterative )

- Bubble Sort 설명 : 인접한 두 원소 검사하여 정렬 list의 원소 갯수: n개 일때 1. (n-1)번 회전하면서 제일 큰 값을 고정시킨다. 1. 첫번째 원소와 두번째 원소 비교 → 작은 수가 앞으로 오게 exchange 2. 두번째 원소와 세번째 원소 비교 → 작은 수가 앞으로 오게 exchange ..... 고정된 원소까지 반복 - python code

문제 ) https://www.acmicpc.net/problem/2581 2581번: 소수 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. www.acmicpc.net 풀이 ) 전에 풀었던 ' No. 1978: 소수찾기' 문제의 코드를 참조해서 코드를 작성하였다 - python code

- Merge Sort 설명 ✔ divide & conquer방법을 이용함 ✔ n개의숫자들을 반으로 나눠 2개의 부분으로 분할하고 → 각각의 부분을 재귀적으로 정렬한 후 → 2개의 정렬된 부분을 merge하여 정렬 - Mergesort (1) 1개의 정렬되지 않은 배열을 2개의 배열로 분할하는것을 반복 → 배열의 원소 갯수가 1개가 될때까지 반복 (2) 양쪽의 배열의 크기가 둘 다 1개가 되면 merge시켜준다 ✔ 입력 크기가 n=6 , list A= [ 9, 20, 5, 15, 3, 11 ]인 경우 초록색 화살표는 divide하는 과정, 노란색 화살표는 merge하는 과정을 의미한다. - Merge ✔ 두개의 정렬된 배열을 하나의 정렬된 배열로 합치는 function ✔ ..

문제 ) https://www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net 풀이 ) ✔ 소수: 1과 자기 자신만으로 나누어 떨어지는 1보다 큰 양의 정수 예를 들어, 2, 3, 5, 7, 11,13,,,,,,등이 소수가 된다 주어진 수 N이 소수인지 알아보기 위해, 2~(N-1)까지 나눠 떨어지게 하는 수가 있는지 약수들을 다 검사하게끔 코드를 작성했다 - Python Code

문제 ) https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 풀이 ) 대각선이 1개의 line이라고 하면 line별로 분수 나열해보기 [ 1/1 ] → [ 1/2, 2/1 ] → [ 3/1, 2/2, 1/3 ] → [ 1/4, 2/3, 3/2, 4/1 ] → .... 이때, num = 해당하는 line에서 뒤 분수가 몇개 있는지를 의미 Ex) 3/1의 경우 → line=3, num=2 1) line 구해주기 X - ( 1+2+3+....+n) → X가 0보다 작아질 때 까지 2) 이때, 1+2+3+....+n = sumline 이라고 하고 , n= line이 됨 ( sumline..

문제 ) https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 문제 땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다. 달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 후에는 미끄러지지 않는다. 달팽이가 나무 막대를 모두 올라가려면, 며칠이 걸리는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) 출력 첫째 줄에 달팽 www.acmicpc.net 풀이) ✔ 달팽이가 하루에 올라가는 높이(oneday) : ( A-B )m ✔ ( V )m에서 ( A )m는 빼고..

문제 ) https://www.acmicpc.net/problem/10250 10250번: ACM 호텔 문제 ACM 호텔 매니저 지우는 손님이 도착하는 대로 빈 방을 배정하고 있다. 고객 설문조사에 따르면 손님들은 호텔 정문으로부터 걸어서 가장 짧은 거리에 있는 방을 선호한다고 한다. 여러분은 지우를 도와 줄 프로그램을 작성하고자 한다. 즉 설문조사 결과 대로 호텔 정문으로부터 걷는 거리가 가장 짧도록 방을 배정하는 프로그램을 작성하고자 한다. 문제를 단순화하기 위해서 호텔은 직사각형 모양이라고 가정하자. 각 층에 W 개의 방이 있는 H 층 건물이라고 가정 www.acmicpc.net 풀이) H=6 , W=12라고 가정 하였을 때 1) N=10이면 4층 2호에 산다 → 10/6=1....4 즉, 4층= ..