[λ°±μ€/C++] 4344λ² : νκ· μ λκ² μ§
λ¬Έμ
λνμ μλ΄κΈ°λ€μ 90%λ μμ μ΄ λ°μμ νκ· μ λλλ€κ³ μκ°νλ€. λΉμ μ κ·Έλ€μκ² μ¬ν μ§μ€μ μλ €μ€μΌ νλ€.
μ λ ₯
첫째 μ€μλ ν μ€νΈ μΌμ΄μ€μ κ°μ Cκ° μ£Όμ΄μ§λ€.
λμ§Έ μ€λΆν° κ° ν μ€νΈ μΌμ΄μ€λ§λ€ νμμ μ N(1 ≤ N ≤ 1000, Nμ μ μ)μ΄ μ²« μλ‘ μ£Όμ΄μ§κ³ , μ΄μ΄μ Nλͺ μ μ μκ° μ£Όμ΄μ§λ€. μ μλ 0λ³΄λ€ ν¬κ±°λ κ°κ³ , 100λ³΄λ€ μκ±°λ κ°μ μ μμ΄λ€.
μΆλ ₯
κ° μΌμ΄μ€λ§λ€ ν μ€μ© νκ· μ λλ νμλ€μ λΉμ¨μ λ°μ¬λ¦Όνμ¬ μμμ μ μ§Έ μ리κΉμ§ μΆλ ₯νλ€.
νμ΄
- λ°°μ΄μ ν¬κΈ°λ₯Ό 1000μΌλ‘ μ μΈ
- μμμ μ리μ κ²½μ° cout << fixedμ cout.precisionμ μ΄μ©νμ¬ μμμ μ리μ κΈΈμ΄λ₯Ό κ³ μ νλ€.
- μλ£νμ μ£Όμ! μ΄μνκ² μκΎΈ νλ Έλ€κ³ ν΄μ μ°Ύμλ΄€λλ° result = (double)num/n*100μμ doubleλ‘ μ κ³ μ³μ€μ resultκ°μ μ μ λλκΈ°κ° λ€μ΄κ° κ²μ΄λ€.
#include <iostream>
using namespace std;
int main()
{
int c, n, num = 0;
double result, avg = 0;
int score[1000] = {0};
cin >> c; // ν
μ€νΈμΌμ΄μ€ κ°μ
for (int i = 0; i < c; i++)
{
cin >> n; // νμμ μ
// Nλͺ
μ μ μ λ°κΈ°
for (int j = 0; j < n; j++)
{
cin >> score[j];
avg += score[j];
}
avg = avg / n;
// νκ· μ λλ νμλ€ λΉμ¨ λ°μ¬λ¦Ό
for (int j = 0; j < n; j++)
{
if (score[j] > avg)
num++;
}
result = (double)num / n * 100;
cout << fixed;
cout.precision(3);
cout << result << "%" << endl;
avg = 0;
num = 0;
}
}
https://www.acmicpc.net/problem/4344
4344λ²: νκ· μ λκ² μ§
λνμ μλ΄κΈ°λ€μ 90%λ μμ μ΄ λ°μμ νκ· μ λλλ€κ³ μκ°νλ€. λΉμ μ κ·Έλ€μκ² μ¬ν μ§μ€μ μλ €μ€μΌ νλ€.
www.acmicpc.net
λλμ μ°μ°μ(/')λ λ κ°μ§ "λͺ¨λ(mode)"λ₯Ό κ°μ§κ³ μλ€. λ§μ½ λ νΌμ°μ°μ λͺ¨λ μ μλΌλ©΄ / μ°μ°μλ μ μ λλκΈ°λ₯Ό μννλ€. μ μμ λͺ¨λ μμμ μ μμ νκ³ μ μ κ°μ λ°ννλ€. (Ex. 7 / 4 = 1)
λ νΌμ°μ°μ μ€ νλ μ΄μμ΄ λΆλ μμμ μ«μλ©΄ / μ°μ°μλ λΆλ μμμ λλκΈ°λ₯Ό μννλ€. (Ex. 7.0/3=2.333, 7/3.0=2.333, 7.0/3.0=2.333)
μΆμ²: https://boycoding.tistory.com/158 [μλ
μ½λ©]