結果
問題 | No.865 24時間降水量 |
ユーザー |
![]() |
提出日時 | 2019-08-16 22:13:04 |
言語 | C++17(clang) (17.0.6 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 396 ms / 2,000 ms |
コード長 | 2,133 bytes |
コンパイル時間 | 1,108 ms |
コンパイル使用メモリ | 150,696 KB |
実行使用メモリ | 9,356 KB |
最終ジャッジ日時 | 2024-11-30 14:31:34 |
合計ジャッジ時間 | 3,652 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 18 |
ソースコード
/*This Submission is to determine how many 120/240 min const. delivery point there are.//info120 req. steps <= 5test_case 1,6 == 50 delivery point2,3,4,5,7 == 80 delivery point8,9 == 90 delivery point10 > 100 delivery point*/#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <algorithm>#include <utility>#include <functional>#include <cstring>#include <queue>#include <stack>#include <math.h>#include <iterator>#include <vector>#include <string>#include <set>#include <math.h>#include <iostream>#include <random>#include<map>#include <iomanip>#include <time.h>#include <stdlib.h>#include <list>#include <typeinfo>#include <list>#include <set>#include <cassert>#include<fstream>#include <unordered_map>#include <cstdlib>#include <complex>#include <cctype>#include <bitset>using namespace std;typedef string::const_iterator State;#define Ma_PI 3.141592653589793#define eps 0.00000001#define LONG_INF 1e18#define GOLD 1.61803398874989484820458#define MAX_MOD 1000000007#define MOD 1000000007#define seg_size 262144#define REP(a,b) for(long long a = 0;a < b;++a)unsigned long xor128() {static unsigned long x = time(NULL), y = 362436069, z = 521288629, w = 88675123;unsigned long t = (x ^ (x << 11));x = y; y = z; z = w;return (w = (w ^ (w >> 19)) ^ (t ^ (t >> 8)));}long long func(long long n, long long a) {pair<long long, long long> now;now.second = min(n, a-1);now.first = max(1LL, a - n);return max(0LL,now.second - now.first +1LL);}long long go[300000];long long base[300000];int main() {long long n;cin >> n;REP(i, n) {long long a;cin >> a;base[i] = a;for (int q = 0; q < 24; ++q) {go[i + q] += a;}}long long now_ans = 0;for (int i = 0; i < 200050; ++i) {now_ans = max(now_ans, go[i]);}int query;cin >> query;vector<long long> ans;REP(i, query) {long long a, b;cin >> a >> b;a--;for (int q = 0; q < 24; ++q) {go[a + q] += b - base[a];now_ans = max(now_ans, go[a + q]);}ans.push_back(now_ans);base[a] = b;}REP(i, ans.size()) {cout << ans[i] << endl;}}