随笔 - 531  文章 - 0  评论 - 3  阅读 - 10215 

 

#include <iostream>
#include <cstring>
#include <cmath>
 using namespace std ;
 const int N=203;
  #define int long long
  int a[N],b[N],n,m,f[N][2002];
  int func(int i,int k){
  	return a[i]*(int)pow(k,b[i]);
  }
  void solve(){
  	int i,j,k;
  	memset(f,127,sizeof f);
  	for(i=0;i<=N;i++) f[i][0]=0;
  	
  	for(i=1;i<=n;i++)
  	for(j=m;j>=0;j--)
  	  for(k=0;k<=m;k++){
  	  	 if(j>=k)
		  f[i][j]=min(f[i][j],f[i-1][j-k]+func(i,k));
		}
	cout<<f[n][m];
  } 
  signed main(){
  	cin>>m>>n;
  	for(int i=1;i<=n;i++) cin>>a[i]>>b[i];
  	solve();
  }
  
  
  

posted on   towboat  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示