Codeforces Round #645 (Div. 2)

Posted likunhong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces Round #645 (Div. 2)相关的知识,希望对你有一定的参考价值。

题目传送门

 

A. Park Lighting

技术图片
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(i, a, b) for (register int i = a; i <= b; i++)

ll n, m;
void solve()
{
    cin >> n >> m;
    cout << (n * m) / 2 + (n * m) % 2 << endl;
}
int main()
{
    int t = 1;
    cin >> t;
    while (t--)
    {
        solve();
    }
}
View Code

 

B. Maria Breaks the Self-isolation

技术图片
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(i, a, b) for (register int i = a; i <= b; i++)

ll n, a[100010], ans;
void solve()
{
    cin >> n;
    rep(i, 1, n) cin >> a[i];
    sort(a + 1, a + n + 1);
    ans = 0;
    rep(i, 1, n) if (a[i] <= i) ans = i;
    cout << ans + 1 << endl;
}
int main()
{
    int t = 1;
    cin >> t;
    while (t--)
    {
        solve();
    }
}
View Code

 

C. Celex Update

技术图片
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(i, a, b) for (register int i = a; i <= b; i++)

ll xa, xb, ya, yb;
void solve()
{
    cin >> xa >> ya >> xb >> yb;
    cout << (xb - xa) * (yb - ya) + 1 << endl;
}
int main()  
{
    int t = 1;
    cin >> t;
    while (t--)
    {
        solve();
    }
}
View Code

 

D. The Best Vacation

技术图片
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(i, a, b) for (register int i = a; i <= b; i++)

ll n, x, d[400010];
ll id, cnt, tmp, ans;
void solve()
{
    cin >> n >> x;
    id = cnt = ans = 0;
    rep(i, 1, n)
    {
        cin >> d[i];
        d[i + n] = d[i];
    }
    rep(i, 1, n * 2)
    {
        cnt += d[i];
        tmp += (d[i] + 1) * d[i] / 2;
        if (cnt >= x)
        {
            while (cnt - x > d[id + 1])
            {
                cnt -= d[++id];
                tmp -= (d[id] + 1) * d[id] / 2;
            }
            ans = max(ans, tmp - (cnt - x + 1) * (cnt - x) / 2);
            cnt -= d[++id];
            tmp -= (d[id] + 1) * d[id] / 2;
        }
    }
    cout << ans << endl;
}
int main()
{
    int t = 1;
    // cin >> t;
    while (t--)
    {
        solve();
    }
}
View Code

 

以上是关于Codeforces Round #645 (Div. 2)的主要内容,如果未能解决你的问题,请参考以下文章

Codeforces Round #645 (Div. 2)

Codeforces Round #645 (Div. 2)

Codeforces Round #645 (Div. 2) 题解 (ABCD) (E一定补!)

Codeforces Round #645 (Div. 2) 题解 (ABCD) (E一定补!)

Codeforces Round #645 (Div. 2) C - Celex Update 思维

Codeforces Round #645 (Div. 2) C - Celex Update 思维