목록c++ (345)
코딩로그

[문제] Here at the Concerned Citizens of Commerce (CCC), we have noted that telemarketers like to use seven-digit phone numbers where the last four digits have three properties. Looking just at the last four digits, these properties are: the first of these four digits is an 8 or 9; the last digit is an 8 or 9; the second and third digits are the same. For example, if the last four digits of the te..

[문제] 10년 동안 도박판에서 야바위를 한 영훈은 이제 보지 않고도 구슬이 있는 컵을 맞추는 지경에 이르렀다. 이런 영훈을 골탕 먹이기 위해 문자열로 야바위를 하려고 한다. T번 동안 문자열 S의 A번째 위치에 있는 문자와 B번째 위치에 있는 문자를 바꾼 결과를 출력하는 프로그램을 작성하시오. [입력] 첫 번째 줄에 문자열 S가 주어지고 두 번째 줄에 T가 주어진다. 문자열 S의 길이는 100보다 작거나 같은 자연수이며, 알파벳 대소문자와 하이픈(-)으로만 이루어져 있다. T는 50보다 작거나 같은 자연수이다. 그 다음 T개의 줄에 걸쳐 A와 B가 주어진다. A와 B는 문자열의 길이보다 작은 음이 아닌 정수이며, 문자열의 맨 처음 글자는 0번째 글자이다. [출력] 바뀐 문자열의 결과를 출력한다. [So..

[문제] 조그만 수학적 연관성에도 깊은 흥미를 두는 상헌이는 우연히 고려대학교 프로그래밍 경시대회가 열리는 날짜를 년도와 월일을 붙여 쓰면 20181208임을 알게 되었다. 2018년이 한 달도 남지 않음을 깨달은 상헌이는 수학적 감수성에 휩싸여, 이 수가 숫자 2, 0, 1, 8로만 이루어져 있는 사실에 심취하였다. 상헌이는 다사다난했던 2018년을 추억하기 위해 2, 0, 1, 8로만 이루어져 있는 정수를 생각하기 시작하였고, 그 결과 상헌이는 양의 정수를 다음과 같이 4종류로 나누어 정의하였다. 어떤 양의 정수를 10진수로 나타냈을 때 2, 0, 1, 8로만 이루어져 있다면 이는 2018과 관련 있는 수라고 부른다. 2018과 관련 있는 수 중에서 2, 0, 1, 8을 모두 포함하는 수들은 2018..

[문제] 자연수 N, M이 주어졌을 때, 1부터 N×M까지 출력 형식대로 출력해보자. [입력] 첫째 줄에 공백 한 칸으로 구분한 N, M이 주어진다. 두 수는 1,000보다 작거나 같은 자연수이다. [출력] 총 N개의 줄을 출력해야 한다. 각 줄에는 M개의 정수를 공백 한 칸으로 구분해 출력해야 한다. 1번 줄에는 1부터 M까지, 2번 줄에는 M+1부터 2×M까지, ..., N번 줄에는 (N-1)×M+1부터 N×M까지 출력해야 한다. 모든 줄의 시작과 끝에 공백이 있으면 안되고, 모든 줄은 줄바꿈(\n)으로 끝나야 한다. [Source Code] #include #include #include #include #include using namespace std; int main() { int n, m, ..

[문제] 어린 제다이들은 요다와 대화하는 법을 배워야 한다. 요다는 모든 문장에서 가장 앞 단어 두 개를 제일 마지막에 말한다. 어떤 문장이 주어졌을 때, 요다의 말로 바꾸는 프로그램을 작성하시오. [입력] 첫째 줄에 문장의 수 N이 주어진다. 둘째 줄부터 N개의 줄에는 각 문장이 주어진다. 문장의 길이는 100글자 이내이다. 단어의 개수는 3개 이상이다. [출력] 각 문장을 요다의 말로 바꾼 뒤 출력한다. [Source Code] #include #include #include #include #include using namespace std; int main() { int test; cin >> test; cin.ignore(); string *result = new string[test]; for..

[문제] 동혁이는 박사 학위 논문을 쓰던 중 두 수를 더하는 방법을 까먹었다. 동혁이는 덧셈 문제와 컴퓨터 과학 문제로 이루어진 문제지를 풀어야 군면제를 받을 수 있다. 문제지의 덧셈 문제는 "a+b"와 같은 형식이고, 컴퓨터 과학 문제는 "P=NP" 하나이다. 동혁이의 문제지가 주어졌을 때, 답을 모두 구하는 프로그램을 작성하시오. [입력] 첫째 줄에 문제의 개수 N이 주어진다. (1 ≤ N ≤ 1000) 다음 N개 줄에는 "a+b"형식의 덧셈 문제나 "P=NP"가 주어진다. a,b ∈ [0,1000]이며 a와 b는 정수이다. [출력] P=NP가 문제인 경우에는 skipped를, 덧셈 문제인 경우에는 덧셈한 결과를 출력한다. [Source Code] #include #include #include #i..

[문제] 텍스트에서 줄을 입력받은 뒤, 줄 번호를 출력하는 프로그램을 작성하시오. [입력] 첫째 줄에 줄의 수 N이 주어진다. 둘째 줄부터 N개의 줄에 각 줄의 내용이 주어진다. 각 줄에 있는 글자의 개수는 50글자를 넘지 않는다. [출력] 각 문장의 앞에 줄 번호를 추가한 뒤 출력한다. 줄 번호는 1번부터 시작한다. 줄번호를 추가하는 형식은 출력 예제를 참고하면 된다. [Source Code] #include #include #include #include #include using namespace std; int main() { int test; cin >> test; cin.ignore(); string *arr = new string[test]; for(int i = 0; i < test; i+..

[문제] 배틀그라운드라는 게임에서는 머리와 몸을 보호하기 위해 헬멧과 조끼를 입는다. 맵에는 다양한 헬멧과 조끼가 있으며 각각 방어력을 갖고 있다. 또한 최대 1개의 헬멧과 조끼밖에 입지 못한다. 경수는 배틀그라운드에서 승리하고 싶기 때문에 시간이 걸리더라도 최고의 헬멧과 조끼를 주워서 최대의 방어력을 얻고 싶어한다. 맵에 존재하는 조끼와 헬멧의 방어력이 주어졌을 때 경수를 도와 경수가 얻을 수 있는 방어력의 최댓값을 구해주자. [입력] 입력의 첫째 줄에 맵에 존재하는 헬멧의 개수 N(N은 1000이하의 자연수)과 조끼의 개수 M(M은 1000이하의 자연수)이 주어진다. 둘째 줄에 각 헬멧의 방어력 h[i] (h[i]는 10억 이하의 자연수)가 N개 만큼 주어지며, 셋째 줄에 각 조끼의 방어력 a[i] ..