【题目大意】
在公交车站有n个旅游团,他们都在等公交车,第i组有ai个人。每一趟车最多坐m个人。
要注意的是,每个组的人都要坐在一辆车上,否则他们会继续等下一辆车。
问你最少需要多少辆车才能将这些人拉完?
【题目分析】
就是一个简单的纯模拟,不过最后要有一个特判。
#include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> #include<cmath> #include<algorithm> using namespace std; int a[120]; int main() { // freopen("cin.txt", "r", stdin); int i, j, k, l ; int n,m; cin>>n>>m; for(i=0;i<n;i++) { cin>>a[i]; } j=0; int ans=0; while(true) { int tp=m; for(i=j;i<n;i++) { if(tp>=a[i]) tp-=a[i]; else { j=i; ans++; break; } } if(i==n) { if(tp<m) ans++; break; } } cout<<ans<<endl; return 0; }