본문 바로가기

c++831

[백준] 4892번 : 숫자 맞추기 게임 (C++) 4892번 : 숫자 맞추기 게임 문제 ) 숫자 맞추기 게임은 초등학교 학생들 사이에서 유행하는 게임이다. 선생님은 학생들의 연산 실력과 논리적인 사고력을 기르기위해 학생들에게 이 게임을 권유하고 있다. 이 게임을 시작할 때는 친구가 숫자 하나를 머리속에 생각해야 한다. 이 숫자를 n0이라고 하자. 그러고 나서 다음과 같이 게임을 진행한다. 친구에게 n1 = 3*n0 계산을 하라고 한 뒤, n1이 짝수인지 홀수인지를 말해달라고 한다. n1이 짝수라면, n2 = n1/2를, 홀수라면 n2 = (n1+1)/2를 계산해달라고 한다. n3 = 3*n2의 계산을 부탁한다. 친구에게 n4 = n3/9를 계산한 뒤, 그 값을 말해달라고 한다. (n4는 나눗셈의 몫이다) 자 이제, n1이 짝수였다면, n0 = 2*n4로.. 2023. 2. 6.
[백준] 4880번 : 다음수 (C++) 4880번 : 다음수 문제 ) 등차수열(AP)은 인접한 두 수의 차이(공차)가 일정한 수열이다. 예를 들어, 3, 5, 7, 9, 11, 13, ...은 차이가 2로 일정한 등차수열이다. 이 문제에서 등차수열의 공차는 항상 0이 아닌 정수이다. 등비수열(GP)는 각 항이 그 앞과 일정한 비(공비)를 가지는 수열이다. 예를 들어, 2, 6, 18, 54, ...은 공비가 3인 등비수열이다. 이 문제에서 등비수열의 공비는 항상 0이 아닌 정수이다. 어떤 수열의 연속한 세개의 숫자가 주어졌을 때, 이 수열이 등차수열인지 등비수열인지를 알아낸 뒤, 다음 항을 구하는 프로그램을 작성하시오. 입력 : 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 수열의 연속하는 세 정수 a1, a2, a3이.. 2023. 2. 6.
[백준] 10874번 : 이교수님의 시험 (C++) 10874번 : 이교수님의 시험 문제 ) 이교수님은 UCPC의 교수이다. 그의 강좌는 선다형 방식으로 이루어지는 기말고사로 유명하다. 시험에는 총 10문제가 출제되며 학생들은 5개의 보기 중 가장 답에 가까운 것을 선택해야한다. 이것이 UCPC의 학생들이 그의 강좌를 좋아하는 이유이다. 하지만, 보통 문제들이 까다로워서 학생들이 시험에서 만점을 받는 것은 거의 어렵다. 이번 학기에는 놀라운 일이 일어났다; 그의 한 강좌에서, 시험 문제들의 정답이 특별한 패턴을 형성하는 것이다! j번째 문제의 정답은 ((j-1) mod 5) +1 번이며, 여기서 mod는 나머지 연산을 의미한다. 예를 들어 첫 번째 문제의 정답은 ((1-1) mod 5) +1 = 1로 1번이며, 여덟번째 문제의 정답은 ((8-1) mod .. 2023. 2. 6.
[백준] 10599번 : 페르시아의 왕들 (C++) 10599번 : 페르시아의 왕들 문제 ) 마야는 페르시아의 왕들에 대해 관심이 있다. 그녀는 최근 자신이 좋아하는 왕들의 나이가 궁금해졌고, 검색을 해서 정보를 얻기 시작했다. 하지만 불행하게도 대부분의 경우 정확한 왕의 출생일과 사망일을 얻지 못했고, 대신 출생, 사망했을거라 추정되는 때의 범위를 얻었다. 예를 들면 키루스 2세는 600BC에서 575BC사이에 출생했고, 530BC에 사망했다. 따라서 키루스 2세는 최소 45살에서 최대 70살의 인생을 살았다. 마야는 자신이 좋아하는 왕들에 대해 출생과 사망의 범위가 적힌 리스트를 길게 만들었다. 하지만 이 길이가 너무 길기때문에 우리가 왕들 나이의 최소와 최댓값을 대신 구해주자. 만약 왕이 x년도에 태어나고 y년도에 죽었다면 그는 y - x살을 산 것.. 2023. 2. 6.