牛客寒假算法基礎集訓營2 J 處女座的期末復習
阿新 • • 發佈:2019-01-25
tle 復習 需要 pan 輸出 using -m lag urn
64bit IO Format: %lld
,表示每門課需要復習的時間
鏈接:https://ac.nowcoder.com/acm/contest/327/J
時間限制:C/C++ 1秒,其他語言2秒
64bit IO Format: %lld
題目描述
快要期末考試了,處女座現在有n門課程需要考試,每一門課程需要花ai小時進行復習,考試的起始時間為bi,處女座為了考試可以不吃飯不睡覺,處女座想知道他能否復習完所有的科目(即在每一門考試之前復習完該科目)。每一門課的考試時間都為兩小時。
輸入描述:
第一行一個整數n
第二行n個整數a1,a2,…,an
第三行n個整數b1,b2,…,bn,表示每門課考試的時間
1<=n<=105
0<=ai<=109 0<=bi<=109輸出描述:
如果處女座能復習完,輸出”YES”,否則輸出”NO”
輸入
3 0 1 1 2 6 4
輸出
YES
貪心,每次復習還沒有復習但是最先考試的科目
推薦用結構體。。。貌似有大佬用兩個數組爆炸了
蒟蒻值能用結構體
#include<bits/stdc++.h> using namespacestd; const int maxn=1e5+10; struct tim { long long cost; long long beg; }a[maxn]; bool cmp(struct tim a,struct tim b) { return a.beg<b.beg; } int main() { int n,flag=1; cin>>n; for(int i=1;i<=n;i++) cin>>a[i].cost; for(int i=1;i<=n;i++) cin>>a[i].beg; sort(a+1,a+1+n,cmp); int i=1; int j=1; long long t=0; for(int i=1;i<=n;i++) { t+=a[i].cost; if(t>a[i].beg) { flag=0; break; } t+=2; } if(flag) cout<<"YES"<<endl; else cout<<"NO"<<endl; return 0; }
牛客寒假算法基礎集訓營2 J 處女座的期末復習