欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

Codeforces Round #381 (Div. 2) Codeforce_740

发布时间:2023/11/30 编程问答 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Codeforces Round #381 (Div. 2) Codeforce_740 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

A. Alyona and copybooks

水题,让求满足条件的最小花费,注意组合可能是多个即可。

#include <bits/stdc++.h> using namespace std;typedef long long ll;int main(int argc, char const *argv[]) {ll n,a,b,c;cin>>n>>a>>b>>c;n%=4;ll ans;if (n==0) ans=0;else if (n==1){ans=c;ans=min(ans,3*a);ans=min(ans,a+b);}else if (n==2){ans=b;ans=min(ans,2*c);ans=min(ans,2*a);}else {ans=a;ans=min(ans,3*c);ans=min(ans,c+b);}cout<<ans<<endl;return 0; }

B. Alyona and flowers

也是水题,只要该区间的贡献小于0就略过去。

#include <bits/stdc++.h> using namespace std;int v[105]; typedef long long ll; int main(int argc, char const *argv[]) {int n,m;cin>>n>>m;for (int i=1;i<=n;i++) cin>>v[i];ll ans=0;for (int i=0;i<m;i++){int l,r;cin>>l>>r;int tt=0;for (int j=l;j<=r;j++) tt+=v[j];if (tt>0) ans+=tt;}cout<<ans<<endl;return 0; }

C. Alyona and mex

给定一些区间,求这些区间的最小mex值最大为多少。

很明显,最小区间长度+1即为结果,然后直接构造就行,

当时敲到最后输出的时候,电脑没电了,很遗憾。

#include <bits/stdc++.h> using namespace std;const int N=1e5+5; int l[N],r[N]; int v[N]; int main(int argc, char const *argv[]) {int n,m;cin>>n>>m;int p=n+1,q=0;for (int i=0;i<m;i++){cin>>l[i]>>r[i];if (r[i]-l[i]+1<p){p=r[i]-l[i]+1;q=i;}}cout<<p<<endl;int ll=0;for (int i=0;i<n;i++) {cout<<ll++<<" ";if (ll==p) ll=0;}return 0; }

总结

以上是生活随笔为你收集整理的Codeforces Round #381 (Div. 2) Codeforce_740的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。