NC221143. ProblemF:FlipFlow
描述
输入描述
输出描述
示例1
输入:
10 7 2 4 9
输出:
4
示例2
输入:
2000 333 3 1000 1250 1500
输出:
0
示例3
输入:
100 10 5 15 20 93 96 97
输出:
5
Python3(3.9) 解法, 执行用时: 18ms, 内存消耗: 2920K, 提交时间: 2021-05-02 12:34:40
t,s,n=input().split() t=int(t) s=int(s) a=0 b=s u=0 r=input().split() for i in r: i=int(i) a=a-(i-u) if a<0: a=0 b=b+(i-u) if b>s: b=s o=a a=b b=o u=i if t>(u+a): print(0) else: print(u+a-t)
C++(clang++11) 解法, 执行用时: 11ms, 内存消耗: 496K, 提交时间: 2021-05-02 12:28:40
#include<bits/stdc++.h> using namespace std; int a[1234], n, t, s, r; int main() { cin >> t >> s >> n; for(int i = 1; i <= n; i++) { cin >> a[i]; r = s - (i > 1) * max(r-a[i]+a[i-1], 0); } cout << max(a[n] + r - t, 0); }