C++ 363

[C/C++] programmers Level 1 콜라 문제

문제 설명 오래전 유행했던 콜라 문제가 있습니다. 콜라 문제의 지문은 다음과 같습니다. 정답은 아무에게도 말하지 마세요. 콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가? 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제를 풀던 상빈이는 콜라 문제의 완벽한 해답을 찾았습니다. 상빈이가 푼 방법은 아래 그림과 같습니다. 우선 콜라 빈 병 20병을 가져가서 10병을 받습니다. 받은 10병을 모두 마신 뒤, 가져가서 5병을 받습니다. 5병 중 4병을 모두 마신 뒤 가져가서 2병을 받고, 또 2병을 모두 마신 뒤 가져가서 1병을 받습니다. 받은 1병과 5병을 받았을 때 남은 1병을 모두 마신 뒤 가져가면 1병을 또 받을 수 있..

[C/C++] programmers Level 1 삼총사

문제 설명 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국중학교 학생들의 번호를 나타내는 정수 배열 number가 매개변수로 주어질 때, 학생들 중 삼총사를 만들 수 있는 방법의 수를 return 하도록 solution 함수를 완성하세..

[C/C++] 백준 28691번 정보보호학부 동아리 소개

문제 고려대학교에는 정보보호학부가 있고, 정보보호학부에는 사이버국방학과와 스마트보안학과의 두 학과가 있다. 공식 명칭은 학부와 학과 이름 모두 스마트보안학과이지만, 헷갈리는 관계로 모두가 편의상 정보보호학부, 스마트보안학과로 부른다. 학부와 각 학과에는 2023년 8월 기준 아래와 같이 각 학부 혹은 학과 소속 동아리가 존재하며, 각 동아리의 목록과 소개는 아래와 같다. 소개는 각 동아리의 회장 혹은 임원에게 직접 받았으며, 보안상의 이유로 모자이크 처리했다. 정보보호학부 소속 동아리 MatKor WiCys 사이버국방학과 소속 동아리 CyKor AlKor 스마트보안학과 소속 동아리 $clear 올해 1학기, 23학번 새내기로 입학한 민재는 이렇게 많은 동아리를 보고 감탄하며 가입하고자 하는 동아리를 정했..

C++/백준 C++ 2023.08.21

[C/C++] programmers Level 0 뒤에서 5등 위로

문제 설명 정수로 이루어진 리스트 num_list가 주어집니다. num_list에서 가장 작은 5개의 수를 제외한 수들을 오름차순으로 담은 리스트를 return하도록 solution 함수를 완성해주세요. 제한사항 6 ≤ num_list의 길이 ≤ 30 1 ≤ num_list의 원소 ≤ 100 입출력 예 num_list result [12, 4, 15, 46, 38, 1, 14, 56, 32, 10] [15, 32, 38, 46, 56] 입출력 예 설명 입출력 예 #1 [12, 4, 15, 46, 38, 1, 14, 56, 32, 10]를 정렬하면 [1, 4, 10, 12, 14, 15, 32, 38, 46, 56]이 되고, 앞에서 부터 6번째 이후의 수들을 고르면 [15, 32, 38, 46, 56]가 ..

[C/C++] 백준 2908번 상수

문제 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다. 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다. 두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다. ex) 734 893 221 231 839 ..

C++/백준 C++ 2023.08.08

[C/C++] programmers Level 0 간단한 논리 연산

문제 설명 boolean 변수 x1, x2, x3, x4가 매개변수로 주어질 때, 다음의 식의 true/false를 return 하는 solution 함수를 작성해 주세요. (x1 ∨ x2) ∧ (x3 ∨ x4) 입출력 예 x1 x2 x3 x4 result false true true true true true false false false false 입출력 예 설명 입출력 예 #1 예제 1번의 x1, x2, x3, x4로 식을 계산하면 다음과 같습니다. (x1 ∨ x2) ∧ (x3 ∨ x4) ≡ (F ∨ T) ∧ (T ∨ T) ≡ T ∧ T ≡ T 따라서 true를 return 합니다. 입출력 예 #2 예제 2번의 x1, x2, x3, x4로 식을 계산하면 다음과 같습니다. (x1 ∨ x2) ∧ (x..

[C/C++] programmers Level 0 문자열이 몇 번 등장하는지 세기

문제 설명 문자열 myString과 pat이 주어집니다. myString에서 pat이 등장하는 횟수를 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ myString ≤ 1000 1 ≤ pat ≤ 10 입출력 예 myString pat result "banana" "ana" 2 "aaaa" "aa" 3 입출력 예 설명 입출력 예 #1 "banana"에서 1 ~ 3번 인덱스에서 한 번, 3 ~ 5번 인덱스에서 또 한 번 "ana"가 등장해서 총 두 번 등장합니다. 따라서 2를 return 합니다. 입출력 예 #2 "aaaa"에서 0 ~ 2번 인덱스에서 한 번, 1 ~ 3번 인덱스에서 한 번, 2 ~ 4번 인덱스에서 한 번 "aa"가 등장해서 총 세 번 등장합니다. 따라서 3을 re..

[C/C++] 백준 11653번 소인수분해

문제 정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오. 입력 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. ex) 72 3 9991 출력 N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다. ex) 2 2 2 3 3 3 97 103 코드 #include using namespace std; class exam { public: void test(int n) { int i=0; int num = 2; while (true) { if (n % num == 0) { n = n / num; cout

C++/백준 C++ 2023.07.27

[C/C++] programmers Level 0 ad 제거하기

문제 설명 문자열 배열 strArr가 주어집니다. 배열 내의 문자열 중 "ad"라는 부분 문자열을 포함하고 있는 모든 문자열을 제거하고 남은 문자열을 순서를 유지하여 배열로 return 하는 solution 함수를 완성해 주세요. 제한사항 1 ≤ strArr의 길이 ≤ 1,000 1 ≤ strArr의 원소의 길이 ≤ 20 strArr의 원소는 알파벳 소문자로 이루어진 문자열입니다. 입출력 예 strArr result ["and","notad","abcd"] ["and","abcd"] ["there","are","no","a","ds"] ["there","are","no","a","ds"] 입출력 예 설명 입출력 예 #1 1번 인덱스의 문자열인 "notad"는 부분 문자열로 "ad"를 가집니다. 따라서 해..