반올림 어떻게 ?
48.78
+ 0.5
=49.28 (정수형 변수에 담으면 알아서 소수점 탈락 됨)
절대값 함수인 abs() algorithm stl에 포함되어있다r고 한다 (추가로 <cmath> include 안해도 됨!)
#include <stdio.h>
#include <vector>
#include <algorithm>
using namespace std;
int main(){
//freopen("input.txt", "rt", stdin);
int n, i, j, avg, res, tmp, min;
int a[9][9];
for(i=0; i<9; i++){
for(j=0; j<9; j++){
scanf("%d", &a[i][j]);
}
}
for(i=0; i<9; i++){
avg=0;
min=2147000000;
for(j=0; j<9; j++){
avg+=a[i][j];
}
avg = (avg/9.0) + 0.5; //소수점 계산을 위해서 실수로 나누어야 한다!
for(j=0; j<9; j++){
tmp = abs(a[i][j]-avg);
//printf("%d!\t", tmp);
if ( tmp < min ) {
min=tmp;
res=a[i][j];
}
else if ( tmp == min) {
if (a[i][j] > res) res=a[i][j];
}
}
printf("%d %d\n", avg, res);
}
return 0;
}
'스터디 > 알고리즘' 카테고리의 다른 글
[알고리즘][C++] K진수 출력 (stack 자료구조) (0) | 2022.08.15 |
---|---|
[알고리즘][C++] Ugly Numbers (two pointers 응용) (0) | 2022.08.11 |
[알고리즘][C++] 멀티태스킹 (0) | 2022.08.07 |
[알고리즘][C++] 공주 구하기 (0) | 2022.08.07 |
[알고리즘][C++] 마구간 정하기(이분탐색 응용) ; 결정 알고리즘 (0) | 2022.08.04 |