사칙연산(6)
-
[ 백준 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 -
[ 백준 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 -
[ 백준 3052번 ] 나머지
백준 3052번 / 5단계 / 나머지 채점 결과는 다음과 같다 메모리 시간 1번째 방법 1112 KB 0 ms 문제 풀이 주어지는 정수 10개 기본 결과 출력 값은 10 이므로 result 값은 10으로 선언해준다. 1. 반복문 i가 0부터 9까지 정수 n 값을 입력받으면서 동시에 나머지 연산자를 사용해 MOD 배열에 값을 넣는다 i = 0 n = 1 1 % 42 = 1 mod [i] = mod [0] = 1 2. 이중 반복문 구조로 자기 자신을 제외한 모든 값을 자신이 가지고 있는 값이랑 같은지 비교하면서 있으면 result 값을 마이너스해준다 그 후 중복검사를 방지하기 위해 배열에는 들어갈 수 없는 값인 -1을 넣어준다. mod [0] = 1 mod [1] = 1 조건 mod [i]와 mod [j] ..
2021.11.12 -
[ 백준 2577번 ] 5단계 - 숫자의 개수
백준 2577번 / 숫자의 개수 채점 결과는 다음과 같다 메모리 시간 1번째 방법 1112 KB 0 ms 문제 풀이 0 ~ 9 숫자의 개수를 담을 number 배열 10개를 선언한다. 1. 먼저 A, B, C 값을 배열에 입력받고 합계 변수 sum에 입력받은 값을 곱해준다. A: 150 B: 266 C: 427 sum = 150 x 266 x 427 = 17037300 2. sum이 한 자릿수가 될 때까지 돌려주면서 나머지를 연산자를 사용해 끝에서부터 하나씩 잘라서 Number 배열 sum % 10 인덱스에 1을 플러스해주고 sum을 10으로 나눠주면서 처리한 숫자는 제거해준다. sum = 17037300 % 10 = 0 number [sum % 10] == number [0] 이므로 number 0번째..
2021.11.10