728x90
더보기
스터디 친구들이 문제 가져오고, 제한 시간 내에 문제 푸는 방식으로 진행
1. 동전 더하기
1-1) 문제
1-2) 내 코드
n, k = map(int, input().split())
lst = []
count = 0
for i in range(n):
coin = int(input())
lst.append(coin)
lst.sort(reverse=True)
while(k != 0):
for i in range(0,n):
q = k // int(lst[i])
k -= int(lst[i])*q
count += q
print(count)
2. 연속 부분 합의 최댓값 구하기 2
2-1) 문제
2-2) 내 코드
근데 사실 밑에 있는 코드는 자꾸 잘못된 값 출력해서 수정 해야함 ㅜ
n = int(input())
data = list(map(int, input().split()))
count = 0
start = 0
end = 0
answer = 0
while(count != n+1):
count += 1
start = 0
end = count - 1
result = 0
while( end != n):
for i in range(start, end + 1):
result += data[i]
answer = max([answer, result])
start += 1
end += 1
print(answer)
2-3) 답안 코드
잘 모르겠어서 구글링해서 답안 코드 찾았다.
답안 코드는 c언어로 되어 있어서, 파이썬으로 수정해서 다시 코드를 작성했다.
출처: https://studyposting.tistory.com/16
size = 7
arr = [4, -1, 2, -19, 3, 6, 9]
ret = 0
psum = 0
for i in range(size):
psum = max([psum, 0]) + arr[i]
ret = max([psum, ret])
print(ret)
사실 코드 적어놓고 이해가 안가서 조금 끄적 거리면서 다시 이해 했다.
근데 생각 보다 재밌어,,,,,,,,,, 🙈🙈
새로운 아이디어? 생각 방식? 얻은 기분 ㅎㅎ
3. 카펫
3-1) 문제
3-2) 내 코드
brown = int(input())
yellow = int(input())
a = 3 #가로
b = 3 #세로
while(a >= b):
a = (brown + yellow)/b
if (b-2)*(a-2) == yellow:
print([int(a), b])
break
b += 1
4. 마치며
졸린데 재밌어 어떡행 >_< 🙊🙊
'CS > Coding Test' 카테고리의 다른 글
[ 이것이 취업을 위한 코딩 테스트다 with 파이썬 ] Chapter 05 DFS/BFS - 탐색알고리즘 DFS/BFS (0) | 2022.02.17 |
---|---|
[ 이것이 취업을 위한 코딩 테스트다 with 파이썬 ] Chapter 05 DFS/BFS - 꼭 필요한 자료구조 기초 (0) | 2022.02.17 |
[ 이것이 취업을 위한 코딩 테스트다 with 파이썬 ] Chapter 04 구현 - 실전문제: 게임 개발 (0) | 2022.02.09 |
[ 이것이 취업을 위한 코딩 테스트다 with 파이썬 ] Chapter 04 구현 - 실전 문제: 왕실의 나이트 (3) | 2022.02.09 |
[ 이것이 취업을 위한 코딩 테스트다 with 파이썬 ] Chapter 04 구현 - 이론과 예제 (0) | 2022.02.09 |