Python 27제] 2019년 한국정보올림피아드 1차대회 2교시 중등부 유형3. 1번-양팔 저울
출처 : 반크 2021년 10월 25일 독도의 날 포스터 무게가 서로 다른 k개의 추와 빈 그릇이 있다. 모든 추의 무게는 정수이고, 그릇의 무게는 0으로 간주한다. 양팔 저울을 한 번만 이용하여 원하는 무게의 물을 그릇에 담고자 한다. 주어진 모든 추 무게의 합을 S라 하자. 예를 들어, 추가 3개이고 그 무게가 각각 {1, 2, 6}이며, S=9이고, 양팔 저울을 한 번만 이용하여 1부터 S사이 모든 정수에 대응하는 물을 다음과 같이 그릇에 담을 수 있다. 여기서 X는 그릇에 담는 물의 무게를 나타내고, □는 그릇을 나타낸다. 만약 추의 무게가 {1, 5, 7}이면 S=13이 되고, 양팔저울을 한 번만 사용하여 그릇에 담을 수 있는 무게는 {1, 2, 3, 4, 5, 5, 7, 8, 11, 12, 1..
2021. 10. 28.
Python 23제] 깊이 우선 탐색을 활용한 막대자르기
출처 : 반크 독도 포스터 문제] 길이 8m의 막대를 3명이서 1m단위로 자를려고 할 때 몇 번이면 1m 막대가 될 수 있는지 프로그램을 작성하시오. (단, 하나의 막대는 한 사람만 자를 수 있다.) 8 -> 4, 4 로 자른다 1번 4, 4 -> 2, 2, 2, 2로 자른다 2번 2,2,2 -> 1,1,1,1,1,1로 자른다 3번 2 -> 1,1로 자른다 4번 그러므로 총 4번을 자르면 8m 막대가 1m막대로 만들수 있게 된다. 입력 예시1] 20, 3 출력 예시1] 8 입력 예시2] 100, 5 출력 예시2] 22 참고풀이] #x: 막대기 총수 #y: 막대기 자를 인원수 #n: 현재 자를 막대기 개수 def cutDef(x,y,n): if n>=x: #자를 막대기가 1m가 되면 작업을 끝낸다. ret..
2021. 10. 5.