21.01.13. (수) 20시 ~ 23시
문다연 지난 회차와 같은 사이트를 활용하 학습했다. 자바처럼 클래스를 만들어 인스턴스를 만들어 사용할 수 있고, 클래스 내에 변수와 함수가 존재할 수 있다. 상속의 개념도 있는데 자바와 문법의 모양이 다르기 때문에 익숙해지기 위한 연습을 할 예정이다.
문혜림
『결과』
리스트와 내장함수(1)
import random as r # random
b = list() # 리스트 생성
print(b)
a = [1, 2, 3, 4, 5] # 리스트 생성
print(a)
print(a[0]) # 1
b = list(range(1, 11))
print(b)
c = a+b # 리스트 합침
print(c)
a.append(6) # append() => 원소 추가
print(a)
a.insert(3, 7) # insert() => 특정 index에 원소 추가
print(a)
a.pop() # pop() => 맨 마지막 원소 꺼내서 삭제
print(a)
a.pop(3)
print(a)
a.remove(4) # remove() => 특정 값 찾아서 삭제
print(a)
print(a.index(5)) # 특정 값에 해당하는 index 출력
a = list(range(1, 11))
print(a)
print(sum(a)) # sum() => a에 있는 모든 원소의 합
print(max(a)) # max() => 인자값 중 가장 큰 원소의 값
print(min(a)) # min() => 인자값 중 가장 작은 원소의 값
print(min(7, 5)) # 5
print(a)
r.shuffle(a) # a값 무작위로 섞음
print(a)
a.sort() # sort() => 오름차순 정렬
print(a)
a.sort(reverse=True) # 내림차순 정렬
print(a)
a.clear() # clear() => Remove all items from list.(빈 리스트)
print(a)
리스트와 내장함수(2)
a = [23, 12, 36, 53, 19]
print(a[:3])
print(a[1:4])
print(len(a))
for i in range(len(a)):
print(a[i], end=' ')
print() # 줄바꿈
for x in a:
if x % 2 != 0: # 홀수만 출력
print(x, end=' ')
print()
for x in enumerate(a): # enumerate() => (index, value) 쌍으로 접근
print(x)
b = (1, 2, 3, 4, 5) # tuple
print(b[0])
for x in enumerate(a):
print(x[0], x[1])
print()
for index, value in enumerate(a):
print(index, value)
print()
if all(60 > x for x in a): # all 모두 참일 경우 => true
print("YES")
else:
print("NO")
if any(15 > x for x in a): # any 한개라도 참일 경우 => true
print("YES")
else:
print("NO")
박형기
유정균
백준 11729 하노이 탑 이동 순서 (재귀)
하노이탑은 이미 재귀로 유명하고 사람들이 거의다 아는문제이다
하노이탑은 한번에 하나씩 옮길수가있고 작은원판은 무조건 큰원판 위에 있어야한다는
큰 2개의 조건이있다 재귀라는 알고리즘을 생각해봤을때 하나의 함수를 실행하면
바로 전단계의 함수가 실행되어야한다 하노이탑의 총 이동횟수도 출력하게되는데
여기에서 힌트를얻었다 n개를 옮길때 2의 n제곱 - 1 번 이동이된다
이것이 말하는것은 재귀함수내부에서 같은함수를 2번호출해야한다 라고 생각했다
또한 n개를 옮길려면 n-1개를 다시옮겨야하기때문에 이 두가지 사실을 합쳐서
구할수있었다
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
자바잡기술++\
재귀함수 내부의 구조
문다연 https://github.com/dayo2n/MGK_winter_2020/projects/1#card-52757995
문혜림 https://github.com/moo-nerim/20_Winter-Mogakco/blob/main/Lecture_04.py
박형기 https://blog.naver.com/qkrgudrl0324/222206519694
유정균 https://blog.naver.com/kyun1229/222206521267