1 条题解
-
4
这。。。肥肠简单,可以直接模拟(我个大聪明一开始看成了背包问题😕 )
-
如果这件宝物能装,就装进去;
-
如果不能,就把包清空,结果+1,再次尝试
-
如果这个物品太大以至于大过了包的体积,说明无法偷走全部宝物,输出-1.
上代码!!
#include<bits/stdc++.h> using namespace std; int main(){ freopen("thief.in","r",stdin); freopen(" thief.out","w",stdout); int n,w; cin>>n>>w; int ans=0,cnt=0; while(n--){ int x;cin>>x; if(x>w){ cout<<-1; return 0; } if(cnt+x>w){ ans++;cnt=0; } cnt+=x; }cout<<ans+1; }
如果AC了点个赞(绿色的)再走呗,🦀🦀!
-
- 1
信息
- ID
- 771
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- (无)
- 递交数
- 102
- 已通过
- 29
- 上传者