[백준 11654] 아스키 코드 [C] 풀이 getchar()로 입력받아서 출력해준 후 개행문자 '\n'을 버퍼에서 비워주면 된다. 소스코드 #include int main(){ printf("%d", getchar()); rewind(stdin); } 출처 11654번: 아스키 코드 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. www.acmicpc.net PS/Baekjoon Online Judge 2021.07.14
[백준 10871] X보다 작은 수 [C] 소스코드 #include int main(){ int N, X, num; scanf("%d %d", &N, &X); while (N-- && scanf("%d", &num)) num < X && printf("%d ", num); } 출처 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net PS/Baekjoon Online Judge 2021.07.14
[백준 10872] 팩토리얼 [C] 소스코드 #include int factorial(int n){ return (!n ? 1 : n * factorial(n-1)); } int main(){ int N; scanf("%d", &N); printf("%d", factorial(N)); } 출처 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net PS/Baekjoon Online Judge 2021.07.13
[백준 10952] A+B - 5 [C] 소스코드 #include int main(){ int A, B; while (1){ scanf("%d %d", &A, &B); if (A == 0 && B == 0) break; printf("%d\n", A+B); } } 제출 10952번: A+B - 5 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net PS/Baekjoon Online Judge 2021.07.13
[백준 10951] A+B - 4 [C] #include int main() { int A, B; while (EOF != scanf("%d %d", &A, &B) && printf("%d\n", A + B)); } 출처 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net PS/Baekjoon Online Judge 2021.07.13
[백준 10950] A+B - 3 [C] 풀이 scanf()함수는 성공적으로 입력받은 변수의 수를 반환하며, 이때의 양수는 참(True)임을 이용해 해결할 수 있다. 소스코드 #include int main() { int T, A, B; scanf("%d", &T); while (T-- && scanf("%d %d", &A, &B)) printf("%d\n", A+B); } 출처 10950번: A+B - 3 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net PS/Baekjoon Online Judge 2021.07.13
[백준 10869] 사칙연산 [C] 소스코드 #include int main(){ int A, B; scanf("%d %d", &A, &B); printf("%d\n%d\n%d\n%d\n%d", A+B, A-B, A*B, A/B, A%B); } 출처 10869번: 사칙연산 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. www.acmicpc.net PS/Baekjoon Online Judge 2021.07.13
[백준 2164] 카드2 [C] 풀이 본래 Queue를 이용해 푸는 문제지만, 다음과 같은 규칙성이 존재해 간단하게 풀이했다. N이 1일때, 결과가 1이다. N >= 2 일때, N에서 N보다 작은 2의 제곱을 뺀 값에 2를 곱해준 값이 결과와 일치한다. 65~128까지의 N은 N보다 작은 2의 배수인 64를 뺀 값에 2배를 곱하여 출력할 것이다. 129 ~ 256의 N또한 마찬가지로 N보다 작은 2의 배수인 128를 뺀 값에 2배를 곱하여 출력할 것이다. 소스코드 #include int main(){ int N, sq = 1; scanf("%d", &N); for (; sq PS/Baekjoon Online Judge 2021.07.13
[백준 10814] 나이순 정렬 [C] 풀이 나이와 이름을 등록할 수 있는 구조체를 만들어 사용하자. 나이가 같을 경우 등록된 순서대로 출력을 해주어야 하기 때문에 다음과 같은 방법을 생각해 볼 수 있다. 구조체 내부에 order변수를 선언해서 등록 순서를 입력 조금은 복잡하지만 구조체 배열의 인덱스를 활용하여 메모리를 절약 등록순서 1 2 3 4 5 6 7 " " 나이 20 21 20 23 21 20 23 " " 하지만, 나이를 고려하지 않을 경우 이미 등록 순서는 오름차순으로 정렬되있다, 때문에 추가로 정렬을 해주지 않고, 가장 적은 나이에서 가장 많은 나이까지 분류를 하여 출력해주는 방식으로 해결했다. 등록순서 1 3 6 나이 20 20 20 등록순서 2 5 나이 21 21 등록순서 4 7 나이 23 23 소스코드 #include #in.. PS/Baekjoon Online Judge 2021.07.13
[백준 10818] 최소, 최대 [C] 풀이 N개의 정수를 전부 저장할 필요 없이 입력받은 직후 최솟값인지, 최댓값인지 구분해 해결할 수 있다. 소스코드 #include int main() { int N, num, max, min; scanf("%d", &N); for (int i = 0; i max) max = num; } printf("%d %d", min, max); } 출처 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 .. PS/Baekjoon Online Judge 2021.07.13