본문 바로가기

전체 글466

[BOJ / C++] 1124번 : 언더프라임 문제 자연수 X를 소인수분해하면, 곱해서 X가 되는 소수의 목록을 얻을 수 있다. 예를 들어, 12 = 2 × 2 × 3이다. 1은 소수가 아니다. 어떤 수 X를 소인수분해 해서 구한 소수의 목록의 길이가 소수이면, 그 수를 언더프라임 이라고 한다. 12는 목록에 포함된 소수의 개수가 3개이고, 3은 소수이니 12는 언더프라임이다. 두 정수 A와 B가 주어졌을 때, A보다 크거나 같고, B보다 작거나 같은 정수 중에서 언더프라임인 것의 개수를 구해보자. 입력 첫째 줄에 두 정수 A와 B가 주어진다. 출력 첫째 줄에 A보다 크거나 같고, B보다 작거나 같은 언더프라임 개수를 출력한다. 제한 2 ≤ A ≤ B ≤ 100,000 Solved.ac 레벨 실버 I 풀이 #include #define MAX 100.. 2023. 5. 12.
[BOJ / C++] 16923번 : 다음 다양한 단어 문제 다양한 단어란 모두 다른 알파벳 소문자로만 이루어진 단어를 의미한다. 예를 들어, "codeplus", "coding", "algorithm"은 다양한 단어, "baekjoon", "startlink"는 다양한 단어가 아니다. 다양한 단어 S가 주어졌을 때, 사전 순으로 S의 바로 다음에 오는 다양한 단어를 구해보자. 입력 첫째 줄에 길이가 26보다 작거나 같은 다양한 단어 S가 주어진다. 출력 사전 순으로 S의 바로 다음에 오는 다양한 단어를 출력한다. 바로 다음에 오는 단어가 없는 경우에는 -1을 출력한다. Solved.ac 레벨 실버 I 풀이 #include using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(NULL);.. 2023. 5. 8.
[BOJ / C++] 25916번 : 싫은데요 문제 입력 입력은 아래와 같이 주어진다. 출력 구멍을 막는 데에 활용할 수 있는 최대 부피를 출력한다. Solved.ac 레벨 실버 I 풀이 #include using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n, m; int s = 0, e = 0, sum = 0, result = 0; cin >> n >> m; int arr[n + 1]; for(int i = 0; i > arr[i]; } while(e m) { sum -= arr[s++]; } else if(sum 2023. 5. 8.
[BOJ / C++] 11728번 : 배열 합치기 문제 정렬되어있는 두 배열 A와 B가 주어진다. 두 배열을 합친 다음 정렬해서 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 배열 A의 크기 N, 배열 B의 크기 M이 주어진다. (1 ≤ N, M ≤ 1,000,000) 둘째 줄에는 배열 A의 내용이, 셋째 줄에는 배열 B의 내용이 주어진다. 배열에 들어있는 수는 절댓값이 109보다 작거나 같은 정수이다. 출력 첫째 줄에 두 배열을 합친 후 정렬한 결과를 출력한다. Solved.ac 레벨 실버 V 풀이 #include using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n, m; int aIdx = 0, bIdx = 0; cin >>.. 2023. 5. 7.