Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
33051 | 郭澍宇 | 【J】T1 | C++ | 运行出错 | 0 | 1000 MS | 1816 KB | 644 | 2024-10-04 12:32:43 |
#include<bits/stdc++.h> using namespace std; long long dp[100005],w[100005]; int n,q; int main(){ // freopen("div.in","r",stdin); // freopen("div.out","w",stdout); cin>>n>>q; for(int i = 1;i<=n;i++){ cin>>w[i]; } while(q--){ int x,y; cin>>x>>y; memset(dp,0x3f,sizeof dp); if(x<y){ cout<<0<<endl; continue; } for(int i = 0;i<=y;i++)dp[i]=0; for(int i = y;i<=x;i++){ for(int j = 1;j<=n;j++){ dp[i]=min(dp[i],dp[i/j]+w[j]); } } cout<<dp[x]<<endl; } }