수학(8)
-
[ 백준 2908번 ] 상수
백준 2908번 / 7단계 / 상수 채점결과는 다음과 같다 메모리 시간 1번째 방법 2024 KB 0 ms 문제 풀이 c++에 있는 라이브러리 이용하면 쉽게 풀 수 있고 문제풀이 원리는 라이브러리 동작원리 그대로입니다 1. 문자열 s1, s2 를 입력받고 reverse 함수를 이용해서 문자열을 반전 시켜줍니다 reverse 함수는 algorithm 헤더파일에 내장 되어 있습니다 INPUT = 734 893 s1 = 734 s2 = 893 reverse s1 = 437 s2 = 398 2. 문자열끼리는 서로 누가큰지 수 계산을 못하기 때문에 문자열을 각 인덱스마다 정수형으로 변환해줘야 합니다 저는 c++ string 헤더파일의 stoi 함수를 이용해서 풀었습니다 반전된 문자열을 stoi 함수를 이용해서 아..
2022.01.03 -
[ 백준 11720번 ] 숫자의 합
백준 11720번 / 7단계 / 숫자의 합 채점 결과는 다음과 같다 메모리 시간 1번째 방법 1112 KB 4 ms 문제 풀이 아스키 코드값 문자 "0" ~ "9" 은 정수형으론 48 ~ 57이다 정수 0 ~ 9 와 문자 "0" ~ "9" 는 48의 차이가 난다 1. 숫자를 문자열로 입력받아서 공백없이 입력되어 있으므로 각 인덱스마다 - 48을 해주고 sum에 더하면 된다 Input = 54321 Number[0] = 53 - 48 = 5 sum = sum + Number[0] Number[1] = 52 - 48 = 4 sum = sum + Number[1] Number[2] = 51 - 48 = 3 sum = sum + Number[2] Number[3] = 50 - 48 = 2 sum = sum + ..
2021.12.09 -
[ 백준 4673번 ] 셀프 넘버
백준 4673번 / 6단계 / 셀프 넘버 채점 결과는 다음과 같다 메모리 시간 1번째 방법 1112 KB 0 ms 문제 풀이 생성자에 의해 생성되는 수의 조건은 문제 예시처럼 12이라는 숫자가 있으면 십의 자리와 일의 자리를 분리해서 12 + 1 + 2 = 15라는 수가 나온다 여기서 12는 생성자가 되는 것이고 15는 생성자에 의해 생성된 수이다. 먼저 셀프 넘버 함수를 작성해 준다. 1. 메인 함수에서 정수 n 값을 인자 값으로 넘겨받고 결괏값 변수 result에 n 값을 대입해 준다 n이 0이 될 때까지 조건대로 n 값을 나머지 연산자를 이용해 한 자리씩 떼어서 result에 더해준다 ex) n(12) % 10 = 2 n(12) = n(12) / 10 = 1.2 변수 타입이 정수형이므로 소수점은 버..
2021.11.29 -
[ 백준 15596번 ] 정수 N개의 합
백준 15596번 / 6단계 / N개의 합 채점 결과는 다음과 같다 메모리 시간 1번째 방법 12832 KB 4 ms 문제 풀이 이번 6단계 테마는 함수이므로 I/O 없이 리턴 값만 전달해 주면 된다. 1. 문제 조건 C/C 11(Clang)/C11 은 longlong 형태로 함수를 작성하고 포인터 a / 정수 개수 n 개를 인자 값으로 받아준다. 2. 반복문을 돌려서 결괏값 변수에 ans에 a 배열 i 번째를 더해준다 ans = 0 i = 0 a[0] = 1 ans = 1 i = 1 a[1] = 2 ans = 3 코드 long long sum(int *a, int n) { int i; long long ans = 0; for ( i = 0; i < n; i++ ) ans += a[i]; return a..
2021.11.25 -
[ 백준 4344번 ] 평균은 넘겠지
백준 4344번 / 5단계 / 평균은 넘겠지 채점 결과는 다음과 같다 메모리 시간 1번째 방법 1112 KB 0 ms 문제 풀이 학생 수 n과 학생 점수 student 배열을 반복적으로 입력받을 사이클 변수 c를 선언해 준다. 1. 학생 수 n 만큼 학생 점수를 입력받고 합계 변수 sum에 학생 점수를 반복을 돌리면서 더해준다, 반복이 끝나면 평균 변수 avg에 평균을 구해 대입해 준다 n = 2 student [0] = 40 student [1] = 60 sum += student [0] sum = 40 sum += student [1] sum = 100 avg(50) = sum(100) / n(2) 2. 입력받은 학생 점수들 중 학생 수만큼 반복을 하면서 평균 변수 avg 보다 높으면 카운팅 변수 c..
2021.11.22 -
[ 백준 1546번 ] 평균
백준 1546번 / 5단계 / 평균 채점결과는 다음과 같다 메모리 시간 1번째 방법 2020 KB 0 ms 문제 풀이 1. 시험과목 수와 시험 과목당 점수를 입력받으면서 max함수를 이용해 최고점수를 score_max변수에 넣는다. 과목점수: 40 80 60 최고점: 80 score_max = 80 2. 반복문을 돌려 현재점수 = 현재점수 = 현재점수 / max * 100 처리를 해준뒤 합계변수 sum에 넣는다 score[0] = 40 40 / 80 * 100 = 50 score[0] = 50 sum = sum + 50 3. 반복문이 끝난 뒤 sum 의 평균을 구해준다. sum = 50 + 100 + 75 평균 = sum / 3 평균 = 75 코드 #include #include using namespa..
2021.11.12