제출 #703365

#제출 시각아이디문제언어결과실행 시간메모리
703365niterSelf Study (JOI22_ho_t2)C++14
62 / 100
1087 ms13464 KiB
#include <bits/stdc++.h>
#define loop(i,a,b) for(int i=a;i<b;i++)
#define pii pair<long long,int>
#define ff first
#define ss second
#define mp make_pair
#define pb push_back
#define STL(i, x) for(auto &i:x) cout << i << " "; cout << "\n";
using namespace std;

long long a[300050], b[300050], as[300050];

ostream& operator<<(ostream &os, pii XXX){
    cout << "[" << XXX.ff << ", " << XXX.ss << "]";
}
void db(){
    cout << "\n";
}
template<class T, class ...U>
void db(T XXX, U ...YYY){
    cout << XXX;  db(YYY...);
}

int main(){
    long long n, m;
    cin >> n >> m;
    loop(i,0,n){
        cin >> a[i];
    }
    loop(i,0,n){
        cin >> b[i];
    }
    long long ans = (9e18);
    long long op = n * m, now_val;
    pii now;
    int now_i;
    priority_queue<pii, vector<pii>, greater<pii>> pq;
    loop(i,0,n){
        pq.push(mp(0,i));
    }
    loop(i,0,op){
        now_val = pq.top().ff;
        now_i = pq.top().ss;
        pq.pop();
        if(a[now_i] > b[now_i] && as[now_i] < m){
            as[now_i]++;
            now_val += a[now_i];
        }
        else{
            now_val += b[now_i];
        }
        pq.push(mp(now_val, now_i));
    }
    cout << pq.top().ff << "\n";
    return 0;
}

컴파일 시 표준 에러 (stderr) 메시지

Main.cpp: In function 'std::ostream& operator<<(std::ostream&, std::pair<long long int, int>)':
Main.cpp:15:1: warning: no return statement in function returning non-void [-Wreturn-type]
   15 | }
      | ^
Main.cpp: In function 'int main()':
Main.cpp:33:15: warning: unused variable 'ans' [-Wunused-variable]
   33 |     long long ans = (9e18);
      |               ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...