Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- long long price[35];
- int main(){
- cin.tie(0)->sync_with_stdio(0);
- cin.exceptions(cin.failbit);
- int n,k,p;
- long long c;
- cin >> n >> k >> price[0];
- for(int i=1;i<=31;i++){
- price[i] = 1e18;
- }
- for(int i=1;i<=k;i++){
- cin >> p >> c;
- price[p] = min(price[p],c);
- }
- for(int i=1;i<=31;i++)
- price[i] = min(price[i],price[i-1]*2);
- long long ans = 0;
- for(int i=31;i>=0;i--){
- if((1ll<<i) <= n){
- ans+=price[i];
- n-=(1ll<<i);
- }
- }
- cout << ans << '\n';
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment