목록swexpert (2)
시간이 NullNull
문자열 P는 스스로를 계속 복제해서 매우 긴 문자열이 되었다. 복제하는 방법은 다음과 같다. P0 = “0” Pi+1 = Pi + “0” + f(g(Pi)) 여기서, f(A) 함수는 문자열 A의 모든 문자를 반전시킨다. 예를 들어서, f(“10110”) = “01001”이다. g(A)함수는 문자열 A를 좌우 반전 시킨다. 예를 들어서, g(“10110”) = “01101” 이다. 위와 같은 복제 방법을 무한히 반복한 문자열 P의 K번째 문자가 무엇인지 구하여라. P1 = “001” P2 = “0010011” P3 = “001001100011011” 위와 같이 복제가 이루어질 것이다. 따라서 3번째 문자는 1, 7번째 문자는 1, 10번째 문자는 0이다. 이 문제는 문자들의 규칙을 보고 점화식만 세워서 ..
N명의 사람들이 어떤 프로그래밍 대회에 참가했다. 대회에는 M개의 문제가 나왔다. 동철이는 이 프로그래밍 대회가 열렸다는 소식을 접했고, 간단한 웹 서핑으로 각 사람들이 문제를 풀었는지 아닌지를 나타내는 NⅹM 개의 값 ai,j를 구할 수 있었다. 사람에 1에서 N까지의 번호를 붙이고, 문제에도 1에서 M까지의 번호를 붙일 때, ai,j 는 대회가 끝나고 i번 사람이 j번 문제를 풀었다면 1, 풀지 못했다면 0을 가지는 값이다. 동철이는 이 대회에는 나가지 못했지만, 다른 프로그래밍 대회에 나갈 계획이고 목표는 우승이다. 그러므로 지금 열린 이 대회에서 1등을 한 사람들을 찾아 라이벌로 삼기로 했다. 이 대회에서 모든 문제의 점수는 같고 프로그램을 제출한 시간은 따지지 않는다. 그러므로, 푼 문제 수가 ..