题目

  • A. Grass Field
  • B. Permutation
  • C. Schedule Management
  • D. Permutation Restoration

A. Grass Field


题解:
(1)若四个位置全是1,则输出2
(2)若全为0则输出0,
(3)其他情况都输出1

/*author : Mzx
*/
#include<bits/stdc++.h>using namespace std;typedef long long ll;
typedef long double ld;
typedef pair<int,int> PII;
const ll mod=1e9+7;
const int INF=0x3f3f3f3f;
const int maxn=1e5+10;
#define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define x first
#define y secondint read () {int k=0,f=1;char c=getchar ();while (c<'0'||c>'9') {if (c=='-') f=-1;c=getchar ();}while (c>='0'&&c<='9') {k=k*10+c-'0';c=getchar ();}return k*f;
}void solve()
{int a,b,c,d;cin>>a>>b>>c>>d;if(a==0&&b==0&&c==0&&d==0) cout<<0<<endl;else if(a==1&&b==1&&c==1&&d==1) cout<<2<<endl;else cout<<1<<endl;
}int main()
{ios;int t;cin>>t;while(t--) {solve();}return 0;
}

B. Permutation


题解:一道思维题,很容易得知d=2时花费总是最大的,证明比较容易就不在此赘述。

/*author : Mzx
*/
#include<bits/stdc++.h>using namespace std;typedef long long ll;
typedef long double ld;
typedef pair<int,int> PII;
const ll mod=1e9+7;
const int INF=0x3f3f3f3f;
const int maxn = 2e5+10;
#define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define x first
#define y secondint read () {int k=0,f=1;char c=getchar ();while (c<'0'||c>'9') {if (c=='-') f=-1;c=getchar ();}while (c>='0'&&c<='9') {k=k*10+c-'0';c=getchar ();}return k*f;
}void solve() {int n;cin>>n;cout<<2<<endl;for(int i = 1;i <= n;i += 2){int p = i;while(p <= n){cout<<p<<' ';p *= 2;}}cout<<endl;
}int main()
{ios;int t; cin>>t;while(t--){solve();}return 0;
}

C. Schedule Management


题解:二分答案,check函数里对n个人分情况算
(1)如果s[i] >= mid的话,用need计数,计算剩下多少需要去完成的任务,
(2)如果s[i] < mid的话,用sum记录剩下的时间可以完成多少“不擅长的任务”.
最后比较一下need和sum的大小即可。

/*author : Mzx
*/
#include<bits/stdc++.h>using namespace std;typedef long long ll;
typedef long double ld;
typedef pair<int,int> PII;
const ll mod=1e9+7;
const int INF=0x3f3f3f3f;
const int maxn = 2e5+10;
#define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define x first
#define y secondint read () {int k = 0, f = 1;char c = getchar();while (c < '0' || c > '9') {if (c == '-') f = -1;c = getchar();}while (c >= '0' && c <= '9') {k = k * 10 + c - '0';c = getchar();}return k * f;
}ll s[maxn];
ll n,m;
bool check(ll x)
{ll need = 0;ll sum = 0;for(int i = 1;i <= n;i++){if(s[i] >= x) need += (s[i] - x);else sum += (x-s[i])/2;}if(need <= sum) return true;else return false;
}void solve() {cin>>n>>m;memset(s,0,sizeof s);for(int i = 1;i<=m;i++){int x;cin>>x;s[x]++;}ll l = 1,r = INF;while(l < r){ll mid = (l + r)>>1;if(check(mid)) r = mid;else l = mid + 1;}cout<<l<<endl;
}int main()
{ios;int t; cin>>t;while(t--){solve();}return 0;
}

D. Permutation Restoration


题解:b[i]通过转换可以得到不等式:

就可以转换成一个基本的区间贪心模型了。
PS:需要注意的是,要特判b[i] = 0的情况。

/*author : Mzx
*/
#include<bits/stdc++.h>using namespace std;typedef long long ll;
typedef long double ld;
typedef pair<int,int> PII;
const ll mod=1e9+7;
const int INF=0x3f3f3f3f;
const int maxn = 2e5+10;
#define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define x first
#define y secondint read () {int k=0,f=1;char c=getchar ();while (c<'0'||c>'9') {if (c=='-') f=-1;c=getchar ();}while (c>='0'&&c<='9') {k=k*10+c-'0';c=getchar ();}return k*f;
}void solve() {int n;cin >> n;vector<int> b(n);for (int j = 0; j < n; j++){cin >> b[j];}vector<int> L(n), R(n);for (int j = 0; j < n; j++){if (b[j] == 0){L[j] = j + 2;R[j] = n;} else {L[j] = (j + 1) / (b[j] + 1) + 1;R[j] = (j + 1) / b[j];}}vector<vector<int>> P(n+1);for (int j = 0; j < n; j++){P[L[j]].push_back(j);}priority_queue<pair<int, int>, vector<pair<int, int>>, greater<pair<int, int>>> pq;vector<int> a(n);for (int j = 1; j <= n; j++){for (int x : P[j]){pq.push(make_pair(R[x], x));}int p = pq.top().second;pq.pop();a[p] = j;}for (int j = 0; j < n; j++){cout << a[j]<<' ';}cout<<endl;
}int main()
{ios;int t; cin>>t;while(t--){solve();}return 0;
}

Educational Codeforces Round 131 (Rated for Div. 2) A-D题解相关推荐

  1. Educational Codeforces Round 133 (Rated for Div. 2)(CD题解)

    Educational Codeforces Round 133 (Rated for Div. 2)CD题解 过AB补CD C. Robot in a Hallway 题意 题意:现有 2∗m 的方 ...

  2. Educational Codeforces Round 131 (Rated for Div. 2)刷题记录OR题解

    题解 A Grass Field 题面翻译 给出一个 2×22 \times 22×2 的矩阵,矩阵的值都是 000 和 111,定义一次操作:选择一个点,将其所在的行和列的点的值全部修改为 000, ...

  3. Educational Codeforces Round 137 (Rated for Div. 2)A~D题解

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 目录 A. Password B. Permutation Val C. Save the Magazines D. Pro ...

  4. Educational Codeforces Round 140 (Rated for Div. 2)A~D题解

    文章目录 A B C D A 思路:就是三个点如果任意两个点的横坐标相同,并且任意两个点的纵坐标相同的话就不行. #include <cstring> #include <iostr ...

  5. Educational Codeforces Round 113 (Rated for Div. 2) A~D题解

    文章目录 A. Balanced Substring B. Chess Tournament C. Jury Meeting D. Inconvenient Pairs A. Balanced Sub ...

  6. Educational Codeforces Round 127 (Rated for Div. 2) A~E 题解

    A. String Building 题意: 问是否可以用 a a . a a a . b b . b b b aa.aaa.bb.bbb aa.aaa.bb.bbb 拼成所给字符串. 思路: 将原字 ...

  7. Educational Codeforces Round 113 (Rated for Div. 2) D. Inconvenient Pairs

    Educational Codeforces Round 113(Rated for Div. 2)的其他题解点我 D. Inconvenient Pairs 原题链接 题目大意: 在一个大小为 1e ...

  8. Educational Codeforces Round 114 (Rated for Div. 2) (A ~ F)全题解

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Educational Codeforces Round 114 (Rated for Div. 2) ...

  9. Educational Codeforces Round 106 (Rated for Div. 2)(A ~ E)题解(每日训练 Day.16 )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 Educational Codeforces Round 106 (Rated for Div. ...

最新文章

  1. css怎么设置列表颜色,css怎么设置table颜色
  2. 8软件遇到的问题及解决方法_问题解决8步法
  3. 阿里开源组装式 Flutter 应用框架 Fish Redux
  4. Java RTTI与反射(参照Java编程思想与新浪博客)
  5. lintcode: k Sum 解题报告
  6. 一文带你了解Spring核心接口Ordered的实现及应用
  7. MSSQL Server 导入/导出到远程服务器
  8. Java Web整合开发(26) -- Spring概述
  9. excel公式中的$(美元符号)的作用
  10. 线段树模板hdu 1754:I Hate It
  11. 非对称加密算法 - Java加密与安全
  12. PHP判断浏览器类型和浏览器语言(附各国语言简写代码)
  13. 各数据库要使用保留字的处理办法
  14. rvest | 网络爬虫初步——使用CSS选择器
  15. 使用XLSTransformer生成报表的步骤和流程
  16. 对称加密算法之Java SM4算法应用 附可用工具类
  17. 数值分析(计算方法)
  18. linux SCALA 安装及环境配置
  19. PS利用色彩范围抠图
  20. 阿里云服务器部署springboot项目

热门文章

  1. PLX PCIe Switch使用
  2. 详解 HTTP 协议报文格式 构造 HTTP 请求
  3. 关于树状图画法的分析
  4. 你真的了解中兴吗?带你认识科技品牌 刷新认知
  5. 尚硅谷在线教育五:尚硅谷在线教育讲师管理开发
  6. 第一步:搭建项目基本框架
  7. 嵌入式第四课(继续SPI之路)
  8. 坚持记账的五大好处,你都知道吗?
  9. 古代司法的体恤刑慎杀制度
  10. 【智能商务】学习财务分析,看这10张思维导图就够啦