數列分段Section I
阿新 • • 發佈:2019-01-09
才不是為了和“數列分段II”湊成一套題才水的部落格
題目
題解
這麼水的貪心看什麼題解
code
#include <bits/stdc++.h> #define up(i, a, b) for(register int i = a; i <= b; ++i) #define down(i, a, b) for(register int i = a; i >= b; i--) using namespace std; const int MAXX = 1e5 + 100; typedef long long ll; inline int read() { int s = 0, w = 1; char ch = getchar(); while (!isdigit(ch)) { if(ch == '-') w = -1; ch = getchar(); } while (isdigit(ch)) { s = (s << 1) + (s << 3) + (ch ^ 48); ch = getchar(); } return s * w; } int n, m; int a[MAXX], cnt = 0, sum = 0; int main() { n = read(); m = read(); for (int i = 1; i <= n; ++i) { a[i] = read(); } for (int i = 1; i <= n; ++i) { sum += a[i]; if (sum > m) { sum = 0; i -= 1; ++cnt; } } cnt++; printf("%d\n", cnt); return 0; }
水部落格