본문 바로가기
반응형

전체 글78

[BOJ/백준] 11720번 숫자의 합 - [c/c++] 풀이 https://www.acmicpc.net/problem/11720 11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net 문제 해설 숫자가 공백없이 입력 되므로 배열로 받는다. 문자를 숫자로 변환하는 과정에서 아스키 코드에 의해 0부터 9까지의 문자는 48부터 57까지의 숫자로 변환된다. 따라서 숫자로 변환 후 '0' 또는 48을 빼줘야 정상적으로 값을 구할 수 있다. 코드 c #include int main() { int t; char s[101]; scanf("%d %s", &t, s); int sum = 0; for (int i = 0; i < t; i++) { sum += s[i] - '0'.. 2022. 10. 14.
[BOJ/백준] 11654번 아스키 코드 - [c/c++] 풀이 https://www.acmicpc.net/problem/11654 11654번: 아스키 코드 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. www.acmicpc.net 문제 해설 char로 입력받은 후 int로 출력하면 되는 문제이다. 코드 c #include int main() { char c; scanf("%c", &c); printf("%d", c); return 0; } c++ #include using namespace std; int main() { char c; cin >> c; cout 2022. 10. 14.
[BOJ/백준] 1065번 한수 - [c/c++] 풀이 https://www.acmicpc.net/problem/1065 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net 문제 해설 if (n >= 99) ans = 99; else ans = n; 3자리수 미만인 수 즉 1부터 99까지는 모두 한수이므로 수가 99이상일 경우 한수의 최소 개수는 99, 수가 99보다 작을 경우 한수의 개수는 그 수가 된다. 한수인 지 체크하는 함수 bool check(int n)을 작성하였다. 세 자리 수부터 들어오므로 백의 자리 수, 십의 자리 수, 일의 자리 수를 각각 구하여 공차가.. 2022. 10. 13.
[BOJ/백준] 4673번 셀프 넘버 - [c/c++] 풀이 https://www.acmicpc.net/problem/4673 4673번: 셀프 넘버 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, www.acmicpc.net 문제 해설 n의 다음 항은 n + (n의 각 자리 수의 합)이다. 123 -> 123 + 1 + 2 + 3 = 129이다. 다음 항을 구하는 함수를 int d(int n) 함수에 작성하였다. 메인 함수에서 1부터 10000까지 수의 다음 항을 구하여 배열에 true로 저장하였다. 즉 true로 저장된 값은 생성자가 있다는 의미로 셀프 넘버가 아니다.. 2022. 10. 13.
[BOJ/백준] 15596번 정수 N개의 합 - [c/c++] 풀이 https://www.acmicpc.net/problem/15596 15596번: 정수 N개의 합 C++17, Java 8, Python 3, C11, PyPy3, C99, C++98, C++11, C++14, Go, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang) www.acmicpc.net 문제 해설 main 함수 없이 문제에서 주어진 함수를 작성하는 문제로, 제출에 들어가 언어를 고르면 언어에 맞는 함수의 기본 꼴이 소스 코드에 있다. c - 배열 a의 개수가 n이므로 n까지 반복문을 돌려 더한 후 return 한다. c++ - a.size(); 는 vector a에 들어있는 데이터의 개수를 구하.. 2022. 10. 13.
[BOJ/백준] 4344번 평균은 넘겠지 - [c/c++] 풀이 https://www.acmicpc.net/problem/4344 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net 문제 해설 배열로 입력 받으며 합을 구해 평균을 구한다. 배열을 순회하며 평균 보다 높은 점수가 있다면 res의 개수를 증가 시켜 총 개수로 나누어 소숫점 아래 3자리까지 출력한다. cout n; while (n--) { cin >> t; average = 0; res = 0; for (int i = 0; i > a[i]; average += a[i]; } average /= t; for (int i = 0; i < t; i++) { if (a.. 2022. 10. 12.
[BOJ/백준] 8958번 OX퀴즈 - [c/c++] 풀이 https://www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net 문제 해설 O의 개수에 따른 누적값을 저장하는 변수를 1로 선언한다. O를 만날 때 마다 변수 값을 더해주며 변수에 1씩 더하다, X를 만나면 1로 초기화 한다. c - strlen(s) : 배열 s의 길이를 반환해준다. string.h 헤더 파일에 포함되어 있다. c++ - s.length() : string s의 길이를 반환해준다. 코드 c #include #include .. 2022. 10. 12.
[BOJ/백준] 1546번 평균 - [c/c++] 풀이 https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 문제 해설 간단한 문제로 입력 받는 배열을 실수 자료형으로 선언해야 된다. 점수/M*100 과정에서 소수가 될 수도 있기 때문이다. 코드 c #define _CRT_SECURE_NO_WARNINGS #include int main() { double jumsu[1001]; int t, max = -1; double sum = 0; scanf("%d", &t); for (int i = 0; i.. 2022. 10. 12.
반응형