본문 바로가기

구현268

[백준] 2153번 : 소수 단어 (C++) 2153번 : 소수 단어 문제 ) 소수란 1과 자기 자신으로만 나누어떨어지는 수를 말한다. 예를 들면 1, 2, 3, 5, 17, 101, 10007 등이 소수이다. 이 문제에서는 편의상 1도 소수로 하자. 알파벳 대소문자로 이루어진 영어 단어가 하나 있을 때, a를 1로, b를 2로, …, z를 26으로, A를 27로, …, Z를 52로 하여 그 합을 구한다. 예를 들어 cyworld는 합을 구하면 100이 되고, abcd는 10이 된다. 이와 같이 구한 수가 소수인 경우, 그 단어를 소수 단어라고 한다. 단어가 주어졌을 때, 그 단어가 소수 단어인지 판별하는 프로그램을 작성하시오. 입력 : 첫째 줄에 단어가 주어진다. 단어의 길이는 20자 이하이다. 주어지는 단어는 알파벳 소문자와 대문자만으로 이루어.. 2023. 2. 17.
[백준] 2703번 : Cryptoquote (C++) 2703번 : Cryptoquote 문제 ) Cryptoquote는 어떤 메시지가 있을 때, 각 알파벳을 다른 알파벳으로 변환해 암호화 하는 방법이다. 예를 들어, HPC PJVYMIY란 메시지가 있을 때, 이를 원래 메시지로 바꾼다면 ACM CONTEST가 된다. 위의 예를 바꾸는 규칙은 H=A, P=C, C=M, J=O, V=N, Y=T, M=E, I=S이다. 이처럼 Cryptoquote를 하려면, 문자와 문자 사이의 규칙이 있어야 한다. 암호화된 메시지와 문자와 문자 사이의 규칙이 주어졌을 때, 이를 원래 메시지로 바꾸는 프로그램을 작성하시오. 입력 : 첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 1000)가 주어진다. 각 테스트 케이스는 다음과 같이 두 줄로 구성되어 있다. 테스트 케이스의 .. 2023. 2. 17.
[백준] 8932번 : 7종 경기 (C++) 8932번 : 7종 경기 문제 ) 민혁이는 한국에서 열리는 7종 경기 대회에 참가한다. 7종 경기는 육상의 필드 경기와 트랙 경기 7 종목으로 이루어져 있다. (100미터 허들, 높이뛰기, 포환던지기, 200미터 달리기, 멀리뛰기, 창던지기, 800미터 달리기) 민혁이의 각 종목의 기록이 주어졌을 때, 기록을 점수로 환산해서 총점을 구하는 프로그램을 작성하시오. 7종 경기의 총점은 각 종목의 점수의 합이다. 각 종목의 점수는 다음과 같은 식을 이용해서 구할 수 있다. A, B, C는 아래 표에 적혀져 있는 상수이다. P는 선수의 성적으로 단위는 아래에 나와있다. 모든 종목의 점수는 정수이다. 모든 필드 경기는 B ≤ P, 트랙 경기는 P ≤ B를 만족한다. 입력 : 첫째 줄에 테스트 케이스의 개수 T가 .. 2023. 2. 17.
[백준] 9226번 : 도깨비말 (C++) 9226번 : 도깨비말 문제 ) 도깨비말은 언어 유희 중 하나로, 글자를 특정 법칙에 따라 재구성하는 것을 말한다. 영어권에서는 피그라틴어라는 것이 있다. 주로 어린이들이 많이 쓰는 데, 남들에게 무슨 말인지 모르게 하기 위해 종종 쓴다. 여기엔 규칙이 있는데, 맨 앞글자가 모음이 아닐때 까지 맨 앞 글자를 어미로 돌린 후 그 끝에 ay를 붙여서 완성한다. 예를 들면 frog는 ogfray이 된다. 만약 맨 앞자음이 없는 apple과 같은 경우는 끝에 ay만 붙여 appleay가 된다. 또는, 단어에 모음이 없는 경우에도 단어의 끝에 ay만 붙인다. 주어진 단어를 피그라틴어로 바꾸는 프로그램을 작성하시오. 입력 : 한 줄에 하나의 단어씩 주어진다. 그리고 마지막 줄에 #을 입력받고 끝낸다. 주어진 단어는.. 2023. 2. 16.