Submission #00198


ソースコード

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include<bits/stdc++.h>
using namespace std;
#define int long long
void solve(int n,int m){
if(n==1){
int a,b;cin>>a>>b;
int ans=0;
for(int i=0;i<m;i++){
ans+=a;
a-=b;
}
cout<<ans<<"\n";
}else{
vector<pair<int,int>>v(n);
for(int i=0;i<n;i++){
cin>>v[i].first>>v[i].second;
v[i].second=-v[i].second;
}
sort(v.rbegin(),v.rend());
int a1=v[0].first,b1=-v[0].second;
int a2=v[1].first,b2=-v[1].second;
int ko1=a1,ko2=a2;
int ans=0;
vector<int>g(m);
int kari=0;
for(int i=0;i<m;i++){
g[i]=a1-(i*b1);
kari+=g[i];
}
ans=kari;
for(int i=m-1;i>0;i-=2){
int mae=g[i]+g[i-1];
int ato=a1+a2;
kari+=ato-mae;
ans=max(ans,kari);
//cout<<kari<<" "<<ato<<" "<<mae<<"\n";
}
cout<<ans<<"\n";
}
}
main(){
while(true){
int n,m;cin>>n>>m;
if(n==0&&m==0){
return(0);
}else{
solve(n,m);
}
}
}

ステータス

項目 データ
問題 0010 - ゲーム
ユーザー名 ei2326
投稿日時 2024-03-29 13:26:35
言語 C++17
状態 Accepted
得点 40
ソースコード長 1195 Byte
最大実行時間 212 ms
最大メモリ使用量 3212 KB

セット

セット 得点 Cases
1 ALL 40 / 40 *

テストケース

ファイル名 状態 実行時間 メモリ使用量 #
C1 AC 195 ms 2960 KB
1
C2 AC 212 ms 2900 KB
1
C3 AC 182 ms 2876 KB
1
C4 AC 170 ms 3212 KB
1