규도자 블로그

[SWEA/12741/파이썬3(python3)] 두 전구 문제 두 개의 전구 X와 Y가 있다. 당신은 0초에서부터 시작하여 100초간 두 전구가 언제 켜지는지를 관찰하였다. 관찰 결과, 전구 X는 관찰 시작 경과 후 A초에서부터 관찰 시작 경과 후 B초까지에만 켜져 있었다. 전구 Y는 관찰 시작 경과 후 C초에서부터 관찰 시작 경과 후 D초까지에만 켜져 있었다. 당신이 두 전구를 관찰하던 100초 중 두 전구가 동시에 켜져 있던 시간은 몇 초일까? 입력 첫 번째 줄에 테스트 케이스의 수 T가 주어진다. 각 테스트 케이스의 첫 번째 줄에는 네 개의 정수 A, B, C, D (0 ≤ A < B ≤ 100, 0 ≤ C < D ≤ 100)가 공백 하나를 사이로 두고 순서대로 주어진다. 3 1 3 5 7 0 5 ..
[SWEA/1961/파이썬3(python3)] 숫자 배열 회전 문제 N x N 행렬이 주어질 때, 시계 방향으로 90도, 180도, 270도 회전한 모양을 출력하라. 제한사항 N은 3 이상 7 이하이다. 입력 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 번째 줄에 N이 주어지고, 다음 N 줄에는 N x N 행렬이 주어진다. 10 3 1 2 3 4 5 6 7 8 9 6 6 9 4 7 0 5 8 9 9 2 6 5 6 8 5 4 9 8 2 2 7 7 8 4 7 5 1 9 7 9 8 9 3 9 7 6 … 출력 출력의 첫 줄은 '#t'로 시작하고, 다음 N줄에 걸쳐서 90도, 180도, 270도 회전한 모양을 출력한다. 입력과..
내게 하고 싶은 말이다. 곰곰히 잘 생각해보니 항상 내 인생을 파괴해왔던 건 착각들이었기 때문에. 내가 코딩을 잘 한다는 착각, 이 사업이 성공할 거라는 착각, 자산가격의 흐름을 예상할 수 있다는 착각 등등 참 많은 착각들을 해왔다. 하지만 이 모든 착각들이 내 삶의 많은 부분들을 파괴해나갔다. 그래도 사람은 살면서 필연적이게 어떤 판단을 내리게 되고 결정을 하게 되는데 그 과정에서 착각을 줄이는 방법이 없을까 고민해봤다. 역시나 답은 있었는데 항상 또 의심하고, 경계하고, 어떤 것이든 비판적으로 수용하는 것만이 답인 것 같다. 하지만 삶의 기본적인 자세를 이렇게 잡는다면 굉장히 비관적인 스탠스를 취하는 것일텐데 결코 부정적인 사람이 되고 싶지는 않다. 그렇다면 답은 무엇이냐. 음... 그것까진 아직 도..
[SWEA/1974/파이썬3(python3)] 스도쿠 검증 문제 스도쿠는 숫자퍼즐로, 가로 9칸 세로 9칸으로 이루어져 있는 표에 1 부터 9 까지의 숫자를 채워넣는 퍼즐이다. 같은 줄에 1 에서 9 까지의 숫자를 한번씩만 넣고, 3 x 3 크기의 작은 격자 또한, 1 에서 9 까지의 숫자가 겹치지 않아야 한다. 입력으로 9 X 9 크기의 스도쿠 퍼즐의 숫자들이 주어졌을 때, 위와 같이 겹치는 숫자가 없을 경우, 1을 정답으로 출력하고 그렇지 않을 경우 0 을 출력한다. 제한사항 퍼즐은 모두 숫자로 채워진 상태로 주어진다. 입력으로 주어지는 퍼즐의 모든 숫자는 1 이상 9 이하의 정수이다. 입력 입력은 첫 줄에 총 테스트 케이스의 개수 T가 온다. 다음 줄부터 각 테스트 케이스가 주어진다. 테스트 케이스..
사람은 어떻게 생각을 하게 되었나에 대한, 철저하게 과학적이고 진화론적인 관점에서 해석한 책이다. 다른 동물들보다 약했던 인간의 조상이 생존을 위한 시뮬레이션, 1차원적인 생각이 점점 고차원적인 생각으로 발전하였고 그것이 협력활동과 연계되면서 점점 더 발전하게 됐다는 내용이다. "과학적 사실"은 아니고 과학적 사실과 증명을 바탕으로 한 저자의 생각일 뿐이니 맹신하지 않는 게 좋다. 협력과 단체생활로 인해 생각이 발달했다는 부분은 유발 하라리의 사피엔스와 리처드 도킨스가 말하는 밈학이 연상됐는데 그냥 이 책들을 일종의 트릴로지로 묶어보면 좀 더 잘 와닿더라. 척박한 환경과 약한 생존능력이 단체생활로 유도하였고 이것이 생각의 발전을 이룩하였으며(여기까지가 생각의 기원) 점점 커져가는 단체와 조직을 통솔하기 ..
[SWEA/2007/파이썬3(python3)] 패턴 마디의 길이 문제 패턴에서 반복되는 부분을 마디라고 부른다. 문자열을 입력 받아 마디의 길이를 출력하는 프로그램을 작성하라. 제한사항 각 문자열의 길이는 30이다. 마디의 최대 길이는 10이다. 입력 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 번째 줄에는 길이가 30인 문자열이 주어진다. 3 KOREAKOREAKOREAKOREAKOREAKOREA SAMSUNGSAMSUNGSAMSUNGSAMSUNGSA GALAXYGALAXYGALAXYGALAXYGALAXY 출력 출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다. (t는 테스트 케이스의 번호..