From fec930aaf016128176f1272c79a232a78b9a748f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E6=B5=B7?= <10402852@qq.com> Date: Sun, 17 Dec 2023 12:30:53 +0800 Subject: [PATCH] 'commit' --- TangDou/Topic/PrefixAndSuffix/P1083.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/TangDou/Topic/PrefixAndSuffix/P1083.cpp b/TangDou/Topic/PrefixAndSuffix/P1083.cpp index 683878c..1c2bdc3 100644 --- a/TangDou/Topic/PrefixAndSuffix/P1083.cpp +++ b/TangDou/Topic/PrefixAndSuffix/P1083.cpp @@ -3,16 +3,16 @@ using namespace std; const int N = 1000010; #define int long long #define endl "\n" -int n, m; // 天数和订单的数量 -int r[N]; // 第i天学校有r[i]个教室可借用 -int d[N], s[N], t[N]; // 借的教室数目、从第s天借到t天 -int b[N]; // 差分数组 -bool check(int x) { // 判断能不能通过x个人 - memset(b, 0, sizeof(b)); // 每次判断都要先初始化差分数组 - int sum = 0; // 记录需要借的教室数 +int n, m; // 天数和订单的数量 +int r[N]; // 第i天学校有r[i]个教室可借用 +int d[N], s[N], t[N]; // 借的教室数目、从第s天借到t天 +int b[N]; // 差分数组 +bool check(int x) { // 判断能不能通过x个人 + memset(b, 0, sizeof b); // 每次判断都要先初始化差分数组 + int sum = 0; // 记录需要借的教室数 for (int i = 1; i <= x; i++) { b[s[i]] += d[i]; // 因为只会对在s~l之间要借用教室的人产生影响,所以可以差分 - b[t[i] + 1] -= d[i]; // 差分//注意是t[i]+1,因为要包含t[i]这个点 + b[t[i] + 1] -= d[i]; // 差分,注意:是t[i]+1,因为要包含t[i]这个点 } for (int i = 1; i <= n; i++) { sum += b[i]; // 因为cf是差分数组,所以sum就是在第i天的借教室的总数