```cpp
#include<iostream>
using namespace std;
int a[1000];
int b[1000];
int c[1000];
int sum=0;
int main(){
int m,n;
cin>>m>>n;
for(int i=1;i<=n;i++){
cin>>a[i]>>b[i];
}
int c=0;
for(int i=1;i<=n;i++){
for(int j=i+1;j<=n;j++){
if(a[j]<a[i]){
c=0;
c=a[j];
a[j]=a[i];
a[i]=c;
c=0;
c=b[j];
b[j]=b[i];
b[i]=c;
}
}
}
c=0;
int y=0;
for(int i=1;;i++){
if(y==m)break;
while(1){
if(y==m)break;
if(c==b[i])break;
sum+=a[i];
c++;
y++;
}
c=0;
}
cout<<sum;
}
```
by 许安智 @ 2021-03-20 20:55:30
已经过了3
by 许安智 @ 2021-03-20 20:57:23
数组不够大
by 许安智 @ 2021-03-20 20:57:43
```cpp
#include<iostream>
using namespace std;
int a[5000];
int b[5000];
int c[5000];
int sum=0;
int main(){
int m,n;
cin>>m>>n;
for(int i=1;i<=n;i++){
cin>>a[i]>>b[i];
}
int c=0;
for(int i=1;i<=n;i++){
for(int j=i+1;j<=n;j++){
if(a[j]<a[i]){
c=0;
c=a[j];
a[j]=a[i];
a[i]=c;
c=0;
c=b[j];
b[j]=b[i];
b[i]=c;
}
}
}
c=0;
int y=0;
for(int i=1;;i++){
if(y==m)break;
while(1){
if(y==m)break;
if(c==b[i])break;
sum+=a[i];
c++;
y++;
}
c=0;
}
cout<<sum;
}
```
随便扫了一眼题,把数组大小改成 $5000$ 就过了
by Maxmilite @ 2021-03-20 21:13:43
@[许安智](/user/408225)
by Maxmilite @ 2021-03-20 21:13:53
![](//图.tk/a)
by Special_Tony @ 2023-08-04 17:32:02