c++
-
JUNGOL 실력키우기 1112 : 줄자접기보관함 2018. 7. 14. 18:24
준성이는 1㎝ 간격으로 눈금이 매겨져 있는 줄자를 가지고 있다. 그 줄자에 있는 서로 다른 눈금 6개에 한 눈금에 하나씩 점이 찍혀 있는데, 빨간 점, 파란 점, 노란 점이 각각 두 개씩 있다. 준성이는 먼저 빨간 점이 만나도록 줄자를 접었다. 그런 후 두 파란 점이 만나도록 줄자를 접고, 또 다시 두 노란 점이 만나도록 줄자를 접었다. 줄자는 투명하여 접더라도 점들을 잘 볼 수 있다. 어떤 색깔의 두 점이 만나도록 줄자를 접었을 때, 그 다음에 접으려는 색깔의 두 점이 이미 만나고 있으면, 그 두 점에 대해서는 줄자를 접지 않는다. 예를 들어 길이 10㎝ 인 줄자에 아래 그림과 같이 2㎝ 와 7㎝ 위에에 두 빨간 점이 찍혀 있고, 5㎝ 와 4㎝위치에 파란 점이, 10㎝ 와 3㎝ 위치에 노란 점이 찍혀 ..
-
JUNGOL 실력키우기 1031 : 빙고보관함 2018. 7. 12. 22:57
빙고 게임은 다음과 같은 방식으로 이루어진다.먼저 아래와 같이 25개의 칸으로 이루어진 빙고판에 1부터 25까지 자연수를 한 칸에 하나씩 쓴다. 다음은 사회자가 부르는 수를 차례로 지워나간다. 예를 들어 5 10 7이 불렸다면 이 세 수를 지운 뒤 빙고판의 모습은 다음과 같다. 차례로 수를 지워가다가 같은 가로줄 세로줄 또는 대각선 위에 있는 5개의 모든 수가 지워지는 경우 그 줄에 선을 긋는다. 이러한 선이 세 개 이상 그어지는 순간 "빙고"라고 외치는데 가장 먼저 외치는 사람이 게임의 승자가 된다. 철수는 친구들과 빙고 게임을 하고 있다. 철수가 빙고판에 쓴 수들과 사회자가 부르는 수의 순서가 주어질 때 사회자가 몇 번째 수를 부른 후 철수가 "빙고"를 외치게 되는지를 출력하는 프로그램을 작성하시오...
-
JUNGOL 실력키우기 2085 : 윤년보관함 2018. 7. 11. 17:04
현재 어떤 사람이 살고 있는 년도 B와 다른 어떤 사람이 태어난 년도 A가 주어질 때, 그 사이에 포함된 윤년의 수가 몇인지 알아보는 프로그램을 작성하라.여기서 윤년이란 2월 29일이 있는 해를 말하며, 해당 년의 숫자가 4로 나누어 떨어지고 100으로 나누어 떨어지지 않거나, 400으로 나누어 떨어지는 년을 뜻한다.태어난 년도가 윤년일 경우에는 세지 않으며, 현재 년도가 윤년일 경우는 세어준다. 입력은 2개의 자연수 B와 A가 입력되며, A와 B는 1이상 1,000,000,000 이하의 숫자이며 B가 A보다 크다. 입력된 년 사이의 A+1년부터 B년까지에 존재하는 윤년의 수를 출력한다. [Copy] 2004 1980 [Copy] 6 또 윤년 문제가 나왔습니다.이번 문제에서 가장 문제가 된 내용은 입력되..
-
JUNGOL 실력키우기 1566 : 소수문자열보관함 2018. 7. 9. 15:20
문자열을 입력 받고, 그 문자열 중 어떤 한 문자라도 발생빈도가 소수를 만족하면 이는 소수문자열이라고 한다. 예를 들어 AABAAB는 소수문자열이다. A의 경우 4번 나타나며, B의 경우 2번 나타나기 때문에 이문자열은 소수문자열인 것이다. 10,000 이하의 문자열이 입력된다. 문자열은 알파벳 대문자만 구성된다. 입력에 대해서 해당 문자열이 소수문자열이 아닌 경우 "NONE"을 출력하며 소수문자열일 경우 소수문자열을 이루게 만들어주는 문자를 사전순으로 한 줄에 공백없이 출력한다. [Copy] AABAAB [Copy] B 예전에 사용했던 소수를 구하는 방법을 참고해서 만들면 됩니다.저같은 경우에는 1이 들어올 때에 대한 예외처리를 해 주지 않아 한번 틀렸네요. 123456789101112131415161..
-
JUNGOL 실력키우기 1535 : 단어집합(하)보관함 2018. 7. 5. 14:07
스트링을 입력 한 후, 스트링을 구성하는 단어들 중, 현재 단어목록에 포함이 되어있지 않은 단어를 단어목록의 가장 뒤에 추가하는 프로그램을 작성하시오. (1) 처음에는 단어의 목록이 하나도 없다. (2) 단어의 구분은 공백으로 한다. (3) 스트링은 계속 입력받으며, 프로그램이 종료되지 않는 이상 기존의 단어들의 목록은 계속 유지된다. (4) 목록에 단어가 없을 경우 단어를 목록의 가장 뒤에 추가하고, 있을경우 추가하지 않는다. (5) 단어목록에는 입력되는 순서대로 저장된다. (6) 알파벳 대.소문자는 구분된다(다르다). 입력되는 스트링의 최대 길이는 50이하이며, 스트링은 최대 10개 이하이다. 하나의 결과가 나온 후에도 계속 새로운 입력을 받다가, 스트링 값이 "END"이면 프로그램을 종료한다. 현재..
-
JUNGOL 실력키우기 1516 : 단어 세기보관함 2018. 7. 3. 13:12
임의의 문장을 입력받아 각 단어별로 나눈 후에 단어들의 중복되는 개수를 구하는 프로그램을 작성하시오. (1) 입력된 스트링은 글자의 제한은 없다. 즉 공백이나 ', ' 등도 입력으로 들어 올 수 있다. (2) 입력된 문장에서 각 단어사이의 구분은 공백으로 한다. (3) 단어에는 공백을 제외한 단어들만이 포함된다. 임의의 문장을 입력받는다.(문장의 길이는 200 이하) 하나의 결과가 나온 후에도 계속 새로운 입력을 받다가, "END"가 입력되면 프로그램을 종료한다. 각 단어들의 발생 빈도를 사전순으로 출력한다. [Copy] I AM DOG DOG DOG DOG A AM I I AM OLYMPIAD JUNGOL JUNGOL OLYMPIAD END [Copy] A : 1 AM : 2 DOG : 4 I : 2 ..
-
JUNGOL 실력키우기 1620: 전화번호 속의 암호보관함 2018. 6. 30. 17:41
자물쇠 사용자의 핸드폰 번호를 가지고 보다 기억하기 편하게 이를 암호로 만들려고 한다. 즉 자물쇠를 사면 처음에 숫자 두 개를 입력하는데 첫 번째 숫자는 각 자리에 더해질 숫자이고, 두 번째 숫자는 몇 번째 숫자 더미를 가지고 암호를 만들 것인가를 결정하는 것이다. 해당 더미 숫자에 각각 더해질 숫자를 더하면 이것이 암호가 된다. 자물쇠의 비밀번호를 만들어 내는 프로그램을 작성하라. (1) 핸드폰 번호, 각 자리에 더해질 숫자, 숫자 더미의 위치를 입력받는다. (2) 입력된 핸드폰 번호에서, 각 숫자 더미사이의 구분은 하이픈(-)으로 하고, 번호는 0이상 9이하의 자연수만 들어온다. (3) 숫자 더미는 앞에서부터 자동적으로 1번부터 매겨지며, 그 수의 제한은 없다. 즉 반드시 abc-de..
-
JUNGOL 실력키우기 1239 : 비밀편지보관함 2018. 6. 29. 19:33
병현이는 지은이에게 문자 A, B, C, D, E, F, G, H 로 쓰여진 편지를 날마다 보내는데, 컴퓨터로 보내는 비밀편지로, 한 문자마다 0 또는 1인 숫자 여섯 개를 사용하여 보낸다. 둘 사이의 약속은 다음과 같다. A 000000 B 001111C 010011D 011100E 100110F 101001G 110101H 111010 병현이가 어느 날 001111000000011100 을 보내면 지은이는 이것을 BAD로 이해하게 된다. 그런데 둘 사이에 약속이 잘 만들어져 있기 때문에, 통신에 문제가 생겨서 한 문자를 표시하는 여섯 숫자 중 어느 한 숫자만 틀리게 오는 경우, 지은이는 원래 보내려는 문자를 알아 낼 수가 있다. 예를 들어 지은이가 000100을 받았을 때, a와 숫자 한자만 다르고,..