문제

https://codeforces.com/problemset/problem/1471/A

걸린 시간

01 : 52 : 45 실패

풀이

C++

#include <bits/stdc++.h>
#define fastio ios::sync_with_stdio(0), cin.tie(0)
#define all(c) c.begin(), c.end()
#define INF 1e9
typedef long long ll;
typedef unsigned long long ull;
using namespace std;

int main(){
    fastio;
    int tc;
    cin >> tc;
    while(tc--){
        int n, x;
        cin >> n >> x;
        ll tmp;
        ll maxi = 0;
        ll sum = 0;
        for(int i = 0; i < n; i++){
            cin >> tmp;
            maxi += ceil(tmp*1.0/x);
            sum += tmp;
        }
        cout << (ll)ceil(sum*1.0/x) << " " << maxi << "\n";
    }
    return 0;
}

무엇을 먼저 합치느냐가 전혀 중요하지 않다는 걸 끝내 찾지 못해서 솔루션 고민만 하다 포기한 문제. 최소값은 모든 a 값을 합쳤을 때 이다. 수와 관련된 규칙을 찾는것도 정수론인가?

32bit 정수 자료형 사용과, ceil 함수 결과값을 정수 형태로 바꾸지 않고 바로 출력해 틀리기도 했다.

'Codeforces' 카테고리의 다른 글

Codeforces #1471B Strange List  (0) 2021.04.07
Codeforces #1504A Déjà Vu  (0) 2021.04.05
Codeforces Round #712 (Div. 2) B  (0) 2021.04.04
Codeforces #1469A Regular Bracket Sequence  (0) 2021.04.02
Codeforces #1469B Red and Blue  (0) 2021.04.02

댓글