poj 3040(水题)
#include<iostream> #include<algorithm> using namespace std; struct node{ int v,b; }nd[25]; int cmp(node nd1,node nd2){ if(nd1.v>nd2.v)return 1; return 0; } int main(){ int i,j,n,c,sum,tmp; bool flag; scanf("%d%d",&n,&c); for(int i=0;i<n;i++){ scanf("%d%d",&nd[i].v,&nd[i].b); } sort(nd,nd+n,cmp); sum = 0; for(i=0;i<n;i++){ if(nd[i].v>=c){ sum += nd[i].b; nd[i].b = 0; } else{ break; } } if(i==n){ printf("%d\n",sum); } else{ while(true){ tmp = 0; for(j=0;j<n;j++){ while(nd[j].b>0&&tmp+nd[j].v<=c){ tmp += nd[j].v; nd[j].b--; } } if(tmp==c){ sum++; tmp = 0; } else{ for(j=n-1;j>-1;j--){ while(nd[j].b>0&&tmp+nd[j].v<c){ nd[j].b--; tmp += nd[j].v; } if(nd[j].b>0&&tmp+nd[j].v>=c){ nd[j].b--; tmp = 0; sum++; break; } } } if(tmp!=0){ break; } flag = true; for(j=0;j<n;j++){ if(nd[j].b>0){ flag = false; break; } } if(flag)break; } printf("%d\n",sum); } return 0; }
【推荐】国内首个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初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)