본문 바로가기

기록/알고리즘

(28)
2019-2) Synchronizing Clocks Q. 4X4의 형태로 시계가 배치되어 있고 각각의 시계는 3/6/9/12 중 하나를 가리키고 있다. 16개 시계 모두 12시를 가리키게 하고 싶다. 시계의 방향은 10개의 스위치를 이용해서 조정할 수 있으며 스위치를 한 번 누르면 3시간 뒤로 조절된다. 10개의 스위치는 각각 복수개의 시계와 연결되어 있으며 연결된 시계 모두 3시간 후로 움직인다. 스위치번호 - 연결된 시계 0 - 0, 1, 2 1 - 3, 7, 9, 11 2 - 4, 10, 14, 15 3 - 0, 4, 5, 6, 7 4 - 6, 7, 8, 10, 12 5 - 0, 2, 14, 15 6 - 3, 14, 15 7 - 4, 5, 7, 14, 15 8 - 1, 2, 3, 4, 5 9 - 3, 4, 5, 9, 13 입력 예시 0 3 0 1 2..
2019-2) # of Changes Q. 동전 10, 50, 100, 500원으로 주어진 거스름돈을 만들 수 있는 가지 수를 계산하여 출력하는 프로그램 입력 ) 30 출력) 1 //(10, 10, 10)의 경우 입력) 50 출력) 2 //(10, 10, 10, 10, 10), (50) 두가지 경우
2019-2) Salary Q. 직원들 급여를 계산할 때 다음과 같은 룰을 적용하기로 했다. 부하가 없는 직원의 월급은 1원, 부하 직원이 있는 직원은 부하 직원들의 급여의 총합 만큼 지급하기로 했다. A가 B의 상사이면 B는 A의 상사가 될 수 없다. 더보기 char organization[][] = { "NYNNN", //직원 0은 부화직원 1, 2가 있다. "NNNNN", //직원 1은 부하직우너이 없다. "NNNYY", "NYNNN", //직원 3은 부하직원 1이 있다. "NNNNN" };
2019-2) handshaking Q. 월요일에 원탁에 회의를 하려고 직원들이 모여 있다. 회의 시작 전에 서로 악수를 하려고 하는데 팔이 겹치지 않게 하면서 모두 악수를 하는 방법의 수를 구하시오. (인원은 짝수) 입력 = 2 -> 출력 = 1 입력 = 6 -> 출력 = 5 Tip1. 더보기 ex) 10명 2-3이 악수하는 경우와 3-7이 악수하는 경우가 독립적 -> 더하기 3-7이 악수하는 경우 나눠진 양쪽끼리 악수 -> 곱하기 . . a-b가 악수하는 경우 나눠지는 양 쪽끼리 악수하는 경우를 모두 더함 Tip2. 더보기 N = 2) H2 = 1 N = 4) H4 = (H2 + H0) + (H0 + H2) = 2 N = 6) H6 = (H4 + H0) + (H2 * H2) + (H0 + H4) = 5 * 다른 의견이 있으시면 피드백 ..

LIST