목록python (21)
코딩딩딩

https://www.acmicpc.net/problem/14681 14681번: 사분면 고르기 점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다. www.acmicpc.net 1. 문제 설명 입력받은 좌표 값에 대하여 어느 사분면에 속하는지 찾는 문제 2. 문제 풀이 if - elif 구문을 활용하여 각 사분면 조건 만족 여부를 검사한다. 1 사분면: x > 0, y > 0 2 사분면: x 0 3 사분면: x 0, y 0 and y > 0: print(1) #2사분면 elif x 0: print(2)..

https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net 1. 문제설명 원래 수의 각 자릿수의 합의 일의 자리 숫자 -> 다음 수의 일의 자리 숫자 원래 수의 일의자리 숫자 -> 다음 수의 십의자리 숫자 원래 수가 나올 때까지 반복하며 사이클의 길이를 구하는 문제 2. 문제 풀이 입력 받은 수를 업데이트하는 연산만 해주면 된다. 초기 수로 되돌아 왔을 때 프로그램 종료 ten_number = n % 10 one_number = (n // ..
1. append()리스트에 단일 항목을 추가한다. arr = [1, 2, 3, 4]#리스트에 5 추가arr.append(5) #arr = [1, 2, 3, 4, 5]#리스트에 [6, 7] 추가arr.append([6, 7]) #arr = [1, 2, 3, 4, 5, [6, 7]]] 아래와 같이 여러 개의 값은 추가할 수 없다. arr = [1, 2, 3, 4]arr.append(5, 6) #불가능 2. insert()insert(i, v)와 같은 형식으로 사용하며 인덱스 i 위치 앞에 값 v를 삽입한다. arr = [1, 2, 3, 4]#'2' 앞에 삽입arr.insert(1, 5) #arr = [1, 5, 2, 3, 4]#'1' 앞에 삽입arr.insert(0, [6, 7]) #arr..

https://www.acmicpc.net/problem/16562 16562번: 친구비 첫 줄에 학생 수 N (1 ≤ N ≤ 10,000)과 친구관계 수 M (0 ≤ M ≤ 10,000), 가지고 있는 돈 k (1 ≤ k ≤ 10,000,000)가 주어진다. 두번째 줄에 N개의 각각의 학생이 원하는 친구비 Ai가 주어진다. (1 ≤ Ai ≤ 10, www.acmicpc.net 1. 문제 설명 특정 비용을 지불하여 친구를 사귀며 친구의 친구를 친구로 인정한다. 친구 전부를 사귈 수 있는 최소 비용을 구하는 문제 2. 문제 풀이 한 친구를 사귄다면 다른 친구 또한 사귀게 되는 원리이다. 그러므로 친구 관계를 형성하는 번호끼리 구분을 해줄 필요가 있다. 유니온 - 파인드 알고리즘을 활용하여 최소비용을 구하는..
1. 개념 유니온-파인드 알고리즘은 주로 그래프 문제에 적용하며 노드들을 특정 집합으로 나눌 때 사용한다. 그래서 같은 집합에 속한 노드들을 확인할 수 있다. 2. 알고리즘 구현 2-1. 부모 노드 배열 초기화 노드 번호에 대응하도록 초기 부모 노드를 자신의 노드 번호 값으로 초기화한다. 1번 노드 -> 1 2번 노드 -> 2 3번 노드 -> 3 ... 이 배열은 각 노드별로 부모 노드 번호를 보관하며 노드별로 결합 여부를 알 수 있다. parent = [i for i in range(n + 1)] #parent = [0, 1, 2, ..., n] 2-2. find 알고리즘 find 알고리즘은 특정 노드의 부모노드를 찾을 때까지 재귀적으로 호출이 되는 구조이다. def find(x): if parent[..

https://www.acmicpc.net/problem/2884 2884번: 알람 시계 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, www.acmicpc.net 1. 문제 설명 입력받은 시각보다 45분 이른 시각을 구하는 시간 계산 문제 2. 문제 풀이 입력받은 M이 45보다 클 경우에는 그대로 45를 빼준 시각을 출력을 한다. 그러나, 입력받은 M이 45보다 작을 경우 H를 한시간 감소시키고 M에 60을 더한 후 45를 빼준 시각을 출력한다. if M >= 45:#45보다 크거나 같은 경우 M -= 45 else:#45보다 작을 경우 if H == 0: H = ..