목록분류 전체보기 (145)
공부 기록장
https://www.acmicpc.net/problem/9465 9465번: 스티커 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스의 첫째 줄에는 n (1 ≤ n ≤ 100,000)이 주어진다. 다음 두 줄에는 n개의 정수가 주어지며, 각 정수는 그 위치에 해당하는 스티커의 www.acmicpc.net 코드 T = int(input()) for _ in range(T): n = int(input()) dp = [] for _ in range(2): dp.append(list(map(int, input().split()))) if n == 1: print(*max(dp)) elif n > 1: dp[0][1] += dp[1][0] dp[1][1] += dp[0][0] for i in r..
https://www.acmicpc.net/problem/10844 10844번: 쉬운 계단 수 첫째 줄에 정답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 코드 N = int(input()) dp = [[0] * 10 for _ in range(N)] dp[0] = [0, 1, 1, 1, 1, 1, 1, 1, 1, 1] for n in range(1, N): dp[n][0] = dp[n-1][1] # 끝에서 두 번째 수가 1이어야, 마지막 자리수가 0일 수 있음 dp[n][9] = dp[n-1][8] # 끝에서 두 번째 수가 8이어야, 마지막 자리수가 9일 수 있음 for k in range(1, 9): dp[n][k] = dp[n-1][k+1] + dp[n-1]..
1. 딕셔너리란? 단어 그대로 '사전'의 의미를 갖는다. Key를 통해 Value를 얻을 수 있는 자료형이다. 2. 딕셔너리를 만드는 방법 dic = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'} dic2 = {1: 'hi'} dic3 = {'a': [1, 2, 3]} 3. 딕셔너리 쌍 추가 / 삭제 # 추가 >>> a = {1: 'a'} >>> a[2] = 'b' >>> a {1: 'a', 2: 'b'} >>> a['name'] = 'pey' >>> a {1: 'a', 2: 'b', 'name': 'pey'} >>> a[3] = [1, 2, 3] >>> a {1: 'a', 2: 'b', 'name': 'pey', 3: [1, 2, 3]} # 삭..
1. Call by value와 Call by reference C언어를 공부하면서 들어봤던 표현이다. 함수의 인자를 전달하는 방식에 대한 명명인데, 인자로 어떤 타입을 전달하느냐에 따른 차이가 있다 1) Call by value : 변수를 복사한 값을 전달하는 방식 함수의 인자를 받을 때, 변수에 담긴 값 자체를 stack에 복사하여 넘겨준다. 예를 들어 변수 a가 있고 함수 func1가 있을 때, func1(a)에서 전달받은 a는 a 자체(주소 값)가 아니라 a의 복사값인 것이다. 따라서 함수 내에서 해당 인자를 조작해도 원본 변수 a는 변하지 않는다. 원본이 수정되지 않아 안전하지만, 함수를 사용해 전역 변수를 바꾸고 싶을 때는 리턴 값을 다시 전역 변수로 넣어줘야해서 번거롭다. 2) Call by..