실력진단
7주차: 498 → 654
이번주는 지난 6주차에 챌린지 시간 숙지 미숙으로 인해 인증받기를 하기 못 했다. 한 문제 더 풀자라며 몇시간을 미루게 된 결과다. 그래서 스스로에게 실망했지만 이를 회피하고자 챌린지 글을 그만 작성할까라는 생각도 했다. 하지만 결론적으로 이건 나를 위한 해결책이 아니란 생각이 들었다. 다음부터는 좀 더 잘 확인하면 되는거니까.
스스로를 위한 해결책은 멈추지 않고, 계속해 나아가는 것이다.
실력진단 점수가 이번주에 눈에 띄게 상승했다. 자주 마주쳤지만 실패했던 4번째 문제를 풀었다.
tmi 이긴 하지만 4번째 문제를 풀고서 기본기가 있다는 말을 시험에서 들으니 기분이 좋았다. 😊 이 맛에 공부를 계속하나보다. 이후 문제들은 해내지 못했지만, 이번주에 못 풀던 문제를 해낸 것 처럼, 다음에도 해결해나갈 것이다.
부족한 점: dfs, bfs
dfs, bfs 이름은 들어봤지만 프로그래밍으로는 접해본 적이 없는 것 같다. 인접한 곳을 전부 탐색하는 코드에 대해 공부를 해야할 것 같다. 이 부분은 개념부터 자료 조사하며 공부를 해야할 것 같아 이번주는 문제은행의 문제를 풀었다.
학습내용
용량이 다른 3개의 물통
def calculate(i):
bowl=0
water=1
water_hap=0
now = i%3
next_num = (now+1)%3
water_hap = arr[now][water]+arr[next_num][water]
if arr[next_num][bowl] >= water_hap:
arr[next_num][water] = water_hap
arr[now][water] = 0
else:
arr[next_num][water] = arr[next_num][bowl]
arr[now][water]=water_hap - arr[next_num][bowl]
arr=[
list(map(int, input().split()))
for _ in range(3)
]
for i in range(100):
calculate(i)
for _, water in arr:
print(water)
1) [물통 용량, 물통에 있는 물 양]을 3번 입력 받는다.
2) 100번 물통의 물을 다음 통으로 이동시킨다.
2.1) 1 → 2, 2 → 3, 3 → 1 순서이다.
2.2) 현재 물통과 다음 물통의 물을 합친다. 이때 물을 받을 물통인 '다음 물통'의 용량이 물을 합친 양보다 크거나 같다면 현재물통의 물을 다 넘긴다.
▼
∴ if 현재물통 물 + 다음 물통 물 ≤ 다음 물통 용량
Then 다음 물통 물 = 현재물통 물 + 다음 물통 물
2.2.1) 합친 물의 양이 '다음 물통'의 용량보다 크다면 다음 물통 용량이 될 때 까지만 물을 넘기고 나머지는 현재 물통에 남긴다.
▼
∴if 현재 물통 물 + 다음 물통 물 > 다음 물통 용량
then 다음 물통 물 = 다음 물통 용량,
현재 물통 물 = (현재 물통 물 + 다음 물통 물) - 다음 물통 용량
💭 문제 자체는 어렵지 않은데 생각을 코드로 옮기는데 오래걸렸다. 시뮬레이션 문제가 아직은 익숙하지 않은 것 같다. 그래서 코드 작성전 생각을 정리하는데 잘못하는 부분도 많았다 😂.
십진수와 이진수
n = int(input(),2)
print(format(n*17, 'b'))
1) 2진수를 입력 받는다.
2) 10진수 n에 17배를 해서 다시 2진수로 변환한다.
💭진수 문제는 최근에 풀기 시작해서 더 자세한 공부가 필요할 것 같다.
다양한 문제를 풀어보는 것이 중요하다고 느끼는 주였다. 다른 문제들을 풀면서 공부했던 걸 응용해서 다른 문제를 풀 수 있다는 것이 즐거움인 것 같다.
'CODING TEST > Code Tree' 카테고리의 다른 글
[코드트리 조별과제] 1주차 정리 (최대공약수 구하기/ 최소공배수 구하기/ 출력결과20) (0) | 2024.07.21 |
---|---|
[코드트리 챌린지] 8주차 - 마무리와 시작(코드네임, 사는 지역, 비오는 날) (0) | 2023.10.30 |
[코드트리 챌린지] 6주차 - 다시 시작 ( 이동경로상에 있는 모든 숫자 더하기 / 가운데에서 시작하여 빙빙 돌기 / 007 / Next Level) (1) | 2023.10.17 |
[코드트리 챌린지] 5주차 - 이어서 쉬어가는 한 주( 빙빙 돌며 숫자 사각형 채우기 / 빙빙 돌며 숫자 사각형 채우기2 ) (1) | 2023.10.09 |
[코드트리 챌린지] 4주차 - 이번주는 쉬어가기( 되돌아오기2 / 격자 위의 편안 상태) (1) | 2023.10.02 |