同求
```cpp
#include<bits/stdc++.h>
using namespace std;
struct keti{
long long a,b;
}l[202];
int n,m;
long long dtgh[21][202];
int main(){
cin>>m>>n;
for(int i=1;i<=n;i++){
cin>>l[i].a>>l[i].b;
}
memset(dtgh,127,sizeof(dtgh));
for(int i=0;i<=n;i++){
dtgh[i][0]=0;
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
for(int k=0;k<=j;k++){
int tmp=l[i].a*pow(k,l[i].b);
dtgh[i][j]=min(dtgh[i][j],dtgh[i-1][j-k]+tmp);
}
}
}
cout<<dtgh[n][m];
return 0;
}
```
by Hugo_Von @ 2023-12-05 14:26:05