From 4ed0d0c2578bed2cbbebd079420f8e36361bd3b2 Mon Sep 17 00:00:00 2001 From: sumin Date: Tue, 26 Nov 2024 13:21:53 +0900 Subject: [PATCH 1/2] =?UTF-8?q?2750=20=EC=88=98=20=EC=A0=95=EB=A0=AC?= =?UTF-8?q?=ED=95=98=EA=B8=B0/=EC=84=B1=EA=B3=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4\240\225\353\240\254\355\225\230\352\270\260.py" | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 "4week/2750-\354\210\230 \354\240\225\353\240\254\355\225\230\352\270\260.py" diff --git "a/4week/2750-\354\210\230 \354\240\225\353\240\254\355\225\230\352\270\260.py" "b/4week/2750-\354\210\230 \354\240\225\353\240\254\355\225\230\352\270\260.py" new file mode 100644 index 0000000..391dc27 --- /dev/null +++ "b/4week/2750-\354\210\230 \354\240\225\353\240\254\355\225\230\352\270\260.py" @@ -0,0 +1,12 @@ +cnt = int(input()) +list=[] +for i in range(cnt): + num = int(input()) + list.append(num) + +list.sort() #sort는 리스트를 제자리에서 정렬한다. 따라서 정렬 후 리스트를 직접 출력 +print(list) #바로 print(list.sort()) 하면 안되는 이유는 list.sort()는 리스트를 정렬하지만, 반환값이 none이기 때문 +#sorted_list = sorted(list) +#print(sorted_list) + + From 3ef60387b7ea2f8aa49a660ecbdd1d5af1360cbb Mon Sep 17 00:00:00 2001 From: sumin Date: Mon, 2 Dec 2024 19:03:39 +0900 Subject: [PATCH 2/2] 4week --- ...4\354\210\234 \354\240\225\353\240\254.py" | 44 +++++++++++++++++++ ...\353\202\230\354\271\230 \354\210\2305.py" | 7 +++ ...5\353\240\254\355\225\230\352\270\2603.py" | 29 ++++++++++++ ...70\354\202\254\354\235\264\353\223\234.py" | 11 +++++ ...0 \353\255\224\352\260\200\354\232\224.py" | 16 +++++++ ...30\353\254\264\354\241\260\352\260\201.py" | 15 +++++++ 6 files changed, 122 insertions(+) create mode 100644 "4week/10814-\353\202\230\354\235\264\354\210\234 \354\240\225\353\240\254.py" create mode 100644 "4week/10870-\355\224\274\353\263\264\353\202\230\354\271\230 \354\210\2305.py" create mode 100644 "4week/10989-\354\210\230 \354\240\225\353\240\254\355\225\230\352\270\2603.py" create mode 100644 "4week/1427-\354\206\214\355\212\270\354\235\270\354\202\254\354\235\264\353\223\234.py" create mode 100644 "4week/17478-\354\236\254\352\267\200\355\225\250\354\210\230\352\260\200 \353\255\224\352\260\200\354\232\224.py" create mode 100644 "4week/2947-\353\202\230\353\254\264\354\241\260\352\260\201.py" diff --git "a/4week/10814-\353\202\230\354\235\264\354\210\234 \354\240\225\353\240\254.py" "b/4week/10814-\353\202\230\354\235\264\354\210\234 \354\240\225\353\240\254.py" new file mode 100644 index 0000000..e28e0a5 --- /dev/null +++ "b/4week/10814-\353\202\230\354\235\264\354\210\234 \354\240\225\353\240\254.py" @@ -0,0 +1,44 @@ +import sys +input = sys.stdin.readline +N = int(input()) + +# 2. member를 리스트로 입력받기 +# N번 반복하여 회원 정보를 입력받음 +# 각 줄은 공백으로 구분되므로, split()으로 나눔 +# 각 회원 정보는 [나이(str), 이름(str)] 형태로 리스트에 저장 +members = [list(map(str, input().split())) for _ in range(N)] + +# 3. 정렬하기 +# sort() 메서드를 사용하여 members 리스트를 정렬 +# key=lambda x: int(x[0])로 정렬 기준을 첫 번째 값(나이)으로 설정 +# x[0]은 문자열로 저장되므로 정수(int)로 변환하여 비교 +# Python의 sort()는 안정 정렬이므로, 나이가 같으면 입력 순서가 유지됨 +members.sort(key=lambda x: int(x[0])) + +# 4. 원하는 형식으로 출력하기 +# 정렬된 members 리스트에서 각 회원 정보를 출력 +# *member를 사용하여 리스트 요소를 공백으로 구분하여 출력 +for member in members: + print(*member) + +""" +num = int(input()) +mem_list = [] +for i in range(num): + mem = input().split() + mem[0] = int(mem[0]) # 첫 번째 값을 정수로 변환 + mem_list.append((mem, i)) # 데이터를 튜플로 저장: (데이터, 입력 순서) + +# 정렬 구현 +for i in range(len(mem_list)): + for j in range(i + 1, len(mem_list)): + if mem_list[i][0][0] > mem_list[j][0][0]: # 숫자가 더 큰 경우 + mem_list[i], mem_list[j] = mem_list[j], mem_list[i] + elif mem_list[i][0][0] == mem_list[j][0][0]: # 숫자가 같은 경우 + if mem_list[i][1] > mem_list[j][1]: # 입력 순서를 비교 + mem_list[i], mem_list[j] = mem_list[j], mem_list[i] + +# 결과 출력 +for item, _ in mem_list: + print(item) +""" \ No newline at end of file diff --git "a/4week/10870-\355\224\274\353\263\264\353\202\230\354\271\230 \354\210\2305.py" "b/4week/10870-\355\224\274\353\263\264\353\202\230\354\271\230 \354\210\2305.py" new file mode 100644 index 0000000..858d71c --- /dev/null +++ "b/4week/10870-\355\224\274\353\263\264\353\202\230\354\271\230 \354\210\2305.py" @@ -0,0 +1,7 @@ +num = int(input()) + +pivolist=[0,1] +for i in range(2,num+1): + pivolist.append(pivolist[i-2]+pivolist[i-1]) + +print(pivolist[num]) \ No newline at end of file diff --git "a/4week/10989-\354\210\230 \354\240\225\353\240\254\355\225\230\352\270\2603.py" "b/4week/10989-\354\210\230 \354\240\225\353\240\254\355\225\230\352\270\2603.py" new file mode 100644 index 0000000..79ad55c --- /dev/null +++ "b/4week/10989-\354\210\230 \354\240\225\353\240\254\355\225\230\352\270\2603.py" @@ -0,0 +1,29 @@ +import sys +input = sys.stdin.readline + +#계수정렬 활용 +n = int(input()) +arr = [0] * (10000 + 1) # 입력값이 10000개까지 주어지니 10000 + 1개의 리스트 선언 + +#각 입력값에 해당하는 인덱스의 값 증가 +for _ in range(n): + arr[int(input())] += 1 + +#arr에 기록된 정보 확인 +for i in range(len(arr)): + if arr[i] != 0: #0이 아닌 데이터, 즉 입력받은 데이터들을 출력 + for _ in range(arr[i]): + print(i) + + +''' 메모리 초과 +cnt = int(input()) +list=[] +for i in range(cnt): + num = int(input()) + list.append(num) + +sorted_list = sorted(list) +for j in sorted_list: + print(j) +''' \ No newline at end of file diff --git "a/4week/1427-\354\206\214\355\212\270\354\235\270\354\202\254\354\235\264\353\223\234.py" "b/4week/1427-\354\206\214\355\212\270\354\235\270\354\202\254\354\235\264\353\223\234.py" new file mode 100644 index 0000000..bd97a41 --- /dev/null +++ "b/4week/1427-\354\206\214\355\212\270\354\235\270\354\202\254\354\235\264\353\223\234.py" @@ -0,0 +1,11 @@ +n = int(input()) + +li = [] +for i in str(n): + li.append(int(i)) +# li = list(map(int,str(n))) + +li.sort(reverse=True) # 내림차순 + +for i in li: + print(i,end='') \ No newline at end of file diff --git "a/4week/17478-\354\236\254\352\267\200\355\225\250\354\210\230\352\260\200 \353\255\224\352\260\200\354\232\224.py" "b/4week/17478-\354\236\254\352\267\200\355\225\250\354\210\230\352\260\200 \353\255\224\352\260\200\354\232\224.py" new file mode 100644 index 0000000..4fb26b4 --- /dev/null +++ "b/4week/17478-\354\236\254\352\267\200\355\225\250\354\210\230\352\260\200 \353\255\224\352\260\200\354\232\224.py" @@ -0,0 +1,16 @@ +def chatbot(num, cnt): + print("____" * cnt + '"재귀함수가 뭔가요?"') + + if cnt == num: + print("____" * cnt + '"재귀함수는 자기 자신을 호출하는 함수라네"') + else: + print("____" * cnt + '"잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어.') + print("____" * cnt + "마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지.") + print("____" * cnt + '그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와서 물었어."') + chatbot(num, cnt + 1) + print("____" * cnt + "라고 답변하였지.") + + +num = int(input()) +print("어느 한 컴퓨터공학과 학생이 유명한 교수님을 찾아가 물었다.") +chatbot(num, 0) \ No newline at end of file diff --git "a/4week/2947-\353\202\230\353\254\264\354\241\260\352\260\201.py" "b/4week/2947-\353\202\230\353\254\264\354\241\260\352\260\201.py" new file mode 100644 index 0000000..4bc29b6 --- /dev/null +++ "b/4week/2947-\353\202\230\353\254\264\354\241\260\352\260\201.py" @@ -0,0 +1,15 @@ +li = list(map(int, input().split())) #31245 +for i in range(5): + for j in range(4): + # 현재 요소(li[j])가 다음 요소(li[j+1])보다 크다면 자리 교환 + if li[j] > li[j + 1]: #3>1 + # 두 요소를 스왑 (교환)하는 과정 + # li[j] 값을 임시 변수 t에 저장 + t = li[j] #t=3 + # li[j]에 li[j+1] 값을 대입 + li[j] = li[j + 1] #1저장(맨앞에) + # li[j+1]에 임시 변수 t 값을 대입 (교환 완료) + li[j + 1] = t #두번째로 3저장(t) + + #결합된 문자열을 출력. + print(" ".join(map(str, li))) \ No newline at end of file