欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

取整

程序员文章站 2022-05-18 22:01:23
A. Equalize Prices Again time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output You are both a s ......
a. equalize prices again
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

you are both a shop keeper and a shop assistant at a small nearby shop. you have nn goods, the ii-th good costs aiai coins.

you got tired of remembering the price of each product when customers ask for it, thus you decided to simplify your life. more precisely you decided to set the same price for all nn goods you have.

however, you don't want to lose any money so you want to choose the price in such a way that the sum of new prices is not less than the sum of the initial prices. it means that if you sell all nn goods for the new price, you will receive at least the same (or greater) amount of money as if you sell them for their initial prices.

on the other hand, you don't want to lose customers because of big prices so among all prices you can choose you need to choose the minimum one.

so you need to find the minimum possible equal price of all nn goods so if you sell them for this price, you will receive at least the same (or greater) amount of money as if you sell them for their initial prices.

you have to answer qq independent queries.

input

the first line of the input contains one integer qq (1q1001≤q≤100) — the number of queries. then qq queries follow.

the first line of the query contains one integer nn (1n100)1≤n≤100) — the number of goods. the second line of the query contains nn integers a1,a2,,ana1,a2,…,an (1ai1071≤ai≤107), where aiai is the price of the ii-th good.

output

for each query, print the answer for it — the minimum possible equal price of all nn goods so if you sell them for this price, you will receive at least the same (or greater) amount of money as if you sell them for their initial prices.

example
input
copy
3
5
1 2 3 4 5
3
1 2 2
4
1 1 1 1
output
copy
3
2
1

 

#include<iostream>
using namespace std;
 
int main()
{
    int n,q;
    cin >> q;
    while(q--)
    {
        int sum = 0,x;
        cin >> n;
        for(int i = 0;i < n;i++)
        {
            cin >> x;
            sum += x;    
        }
        if(sum % n == 0)
            cout << sum / n << endl;
        else
            cout << sum / n + 1 << endl;
        
    }
    
    return 0;
}

向上取整向下取整,简单,主要是理解