문제
Softeer - 현대자동차그룹 SW인재확보플랫폼
softeer.ai
N명의 학생들의 성적이 학번순서대로 주어졌다.
학번 구간 [A, B]가 주어졌을 때 이 학생들 성적의 평균을 구하는 프로그램을 작성하라.
#include<iostream>
#include<vector>
#include <cmath>
using namespace std;
int main(int argc, char** argv)
{
int N, K;
vector<float> arr;
cin >> N >> K;
for (int i = 0; i < N; i++){
float num;
cin >> num;
arr.push_back(num);
}
for (int i = 0; i < K; i++){
int first, last;
cin >> first >> last;
int count = last - first + 1;
float add = 0;
for (int j = 0; j < count; j++){
add += arr[first - 1 + j];
}
add /= count;
cout << fixed; //소수점 고정
cout.precision(2);
cout << add << endl;
}
return 0;
}
배울점
1. precision, fied
precision을 사용하면 cout의 출력범위를 설정할 수 있다. precision만 사용하면 앞자리부터의 개수를 출력가능하지만, fixed와 같이 사용하면 뒷자리부터 출력개수를 카운트한다.
참고
C++) 원하는 자리수 까지 출력하기 (반올림, 올림, 내림)
https://www.acmicpc.net/problem/2865 2865번: 나는 위대한 슈퍼스타K 첫째 줄에 N, M, K가 주어진다. (1 ≤ M ≤ 100, 1 ≤ K ≤ N ≤ 100) 다음 M개의 줄은 각 장르에 대한 참가자의 능력이 주어진다. 이 줄에는 N개
nextcoder.tistory.com
'C++' 카테고리의 다른 글
[C++, 코딩테스트] Softeer : 강의실 배정 with 그리디 + 우선순위 큐 (0) | 2024.01.26 |
---|---|
[C++, 코딩테스트] Softeer : 수퍼바이러스 with 분할정복 (1) | 2024.01.24 |
[C++, 코딩테스트] Softeer : 8단 변속기 (1) | 2024.01.22 |
[C++, 코딩테스트] Softeer : 징검다리 with DP(기억하기 풀이법) (1) | 2024.01.22 |
[C++, 코딩테스트] Softeer : A+B (0) | 2024.01.17 |