
1 #include <iostream>
2 #include <stdio.h>
3 #include <math.h>
4 #include <cstring>
5 #include <map>
6 #include <set>
7 #include <algorithm>
8 #include <queue>
9 #include <stack>
10 using namespace std;
11 long long dp[15][1100];
12 long long INF=(long long)1e18;
13 int A[110000],B[110000];
14 int K[110000],P[110000];
15 int n,m;
16 int main(){
17 while(~scanf("%d%d",&n,&m)){
18 long long sum=0;
19 for(int i=0;i<=15;i++){
20 for(int j=0;j<=1100;j++){
21 dp[i][j]=INF;
22 }
23 }
24 for(int i=1;i<=n;i++) scanf("%d%d",&A[i],&B[i]);
25 for(int i=1;i<=m;i++) scanf("%d%d",&K[i],&P[i]);
26 for(int i=0;i<=10;i++){
27 dp[i][0]=0;
28 for(int j=1;j<=m;j++){
29 if(P[j]<i) continue;
30 for(int z=1;z<=1000;z++){
31 int ans=max(z-(P[j]-i),0);
32 dp[i][z]=min(dp[i][z],(long long)dp[i][ans]+K[j]);
33 }
34 }
35 }
36 int flag=0;
37 for(int i=1;i<=n;i++){
38 if(dp[B[i]][A[i]]==INF){
39 flag=1;
40 break;
41 }
42 sum+=dp[B[i]][A[i]];
43 }
44 if(flag){
45 cout<<"-1"<<endl;
46 }else{
47 cout<<sum<<endl;
48 }
49 }
50 return 0;
51 }

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~