본문 바로가기

코딩 테스트63

[백준 1929] 소수 구하기, C++ https://www.acmicpc.net/problem/1929 1929번: 소수 구하기 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) www.acmicpc.net 본 문제는 소수 구하기 문제인데 입력 값이 1,000,000이다. 소수를 판단하는 알고리즘은 1 2 3 4 5 6 7 bool pnum (int n) { if (n 2020. 1. 9.
[백준 1037] 약수, C++ https://www.acmicpc.net/problem/1037 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되지 않는다. www.acmicpc.net 본 문제는 주어진 약수를 이용하여 어떤 수 인지 맞추는 문제다. 제일 큰 약수와 제일 작은 약수의 곱으로 쉽게 풀 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #include #include #include using namespace std; int main(){ int n, tmp, min = 1e9, max = 0; scanf("%d.. 2020. 1. 8.
[백준 4375] 1, C++ https://www.acmicpc.net/problem/4375 4375번: 1 문제 2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오. 입력 입력을 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, n이 주어진다. 출력 1로 이루어진 n의 배수 중 가장 작은 수의 자리수를 출력한다. 예제 입력 1 복사 3 7 9901 예제 출력 1 복사 3 6 12... www.acmicpc.net 본 문제는 2001 Waterloo's local Programming Contests E번 문제로 n의 배수 중 1로만 이루어진 제일 작은 수의 자릿수를 구하는 문제다. 계산할 때, long l.. 2020. 1. 8.
[백준 1158] 요세푸스 문제, C++ https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 본 문제는 배열을 이용해서 풀 수 있다. 이 문제에서 queue를 사용하는 것이 효율적이지 못하지만 처음에 딱 떠오르는 게 queue였다. 문제를 풀는 것에서 끝내는 게 아니라 좀 더 효율적인 코드를 보면서 공부하는 것이 바람직하다고 생각한다. 순서에 맞는 숫자 찾기 출력 후 지우기 queue 소스코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 #include #include usi.. 2020. 1. 8.
[백준 1406] 에디터, C++ https://www.acmicpc.net/problem/1406 1406번: 에디터 문제 한 줄로 된 간단한 에디터를 구현하려고 한다. 이 편집기는 영어 소문자만을 기록할 수 있는 편집기로, 최대 600,000글자까지 입력할 수 있다. 이 편집기에는 '커서'라는 것이 있는데, 커서는 문장의 맨 앞(첫 번째 문자의 왼쪽), 문장의 맨 뒤(마지막 문자의 오른쪽), 또는 문장 중간 임의의 곳(모든 연속된 두 문자 사이)에 위치할 수 있다. 즉 길이가 L인 문자열이 현재 편집기에 입력되어 있으면, 커서가 위치할 수 있는 곳은 L+1가지 경우가 www.acmicpc.net 본 문제는 2004 Olympiad Croatian Highschool Competitions in Informatics National C.. 2020. 1. 8.
[백준 1874] 스택 수열, C++ https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 본 문제는 stack을 잘 사용할 수 있는지 물어보는 문제다. 예를 들어 stack이 empty인데 stack top, pop을 하는 경우를 생각해야 한다. 그것만 잘 고려한다면 쉽게 문제를 풀 수 있다. 그래서 그냥 모든 경우에 stack이 empty가 아닐 경우를 추가했다. 그 외 문제들은 스택 수열 FAQ를 참.. 2020. 1. 8.