Where_Free

羸弱 无知 自大 懒惰

2019浙大校赛--E--Potion(签到水题)

一丢丢思维就ok

题目大意:

魔法师要煮药,有n个等级的药,所需要的药物为a1,a2...an,意为第n级需要多少药物,下一行为库存的不同等级药物,药物可降级使用不可升级。

思路:从高级药物开始解,把没用完的药物存起来放到下一及使用。

代码如下:

 1 #include <iostream>
 2 #include <string.h>
 3 using namespace std;
 4 int t,n,a[200],b[200],all,flag(0);
 5 long long sum;
 6 int main(){
 7     
 8     cin>>t;
 9     while(t--){
10         sum=0; flag=0;
11         memset(a,0,sizeof(a));
12         memset(b,0,sizeof(b));
13         cin>>n;
14         for(int i=0;i<n;i++){
15             cin>>a[i];
16         }
17         for(int i=0;i<n;i++){
18             cin>>b[i];
19             //sum=sum+b[i];
20         }
21         for(int i=n-1;i>=0;i--){
22             if(a[i]<=b[i]+sum){
23                 sum=sum+b[i]-a[i];
24             }
25             else {
26                 cout<<"No\n";
27                 flag=1;
28                 break;
29             }
30         }
31         if(!flag) {
32             cout<<"Yes\n";
33         }
34     }
35     return 0;
36 }

 

posted on 2019-04-15 21:38  Where_Free  阅读(283)  评论(0编辑  收藏  举报

导航