Codeforces Round #574 (Div. 2)补题
A. Drinks Choosing
统计每种酒有多少人偏爱他们。 ki 为每种酒的偏爱人数。
输出ans = (n + 1)/2 > Σki / 2 ? (n + 1)/2 - Σki / 2 + (Σki / 2) * 2 : (n + 1)/2 * 2
#include<iostream>
#include<algorithm>
using namespace std; int n,k;
const int L = +;
int a[L];
int main()
{
cin>>n>>k;
int t;
for(int i = ;i<n;++i)
{
cin>>t;
a[t]++;
}
n = n%? (n + )/: n/;
int cnt = ;
for(int i = ;i<=k;++i)
cnt+= a[i]/;
if(cnt<n)
cout<< n - cnt + *cnt<<endl;
else cout<<n*<<endl; return ;
}
B. Sport Mafia
二分查找二元一次方程的解
设 放入操作数为a,取出操作数为b,有
a*(a + 1)/2 - b = k
a + b = n
联立得a*(a + 3) = 2*(n + k) 二分查找a,再解出b即可
#include<iostream>
using namespace std; long long n,k; int main()
{
cin>>n>>k;
long long lo = ;
long long hi = 5e9;
long long mi = (lo + hi)>>;
while(lo <hi)
{
mi = (lo + hi)>>;
if(mi * (mi + ) < *(n+k))
lo = mi+;
else hi = mi;
} cout<<n - lo<<endl;
return ;
return ;
}
C. Basketball Exercise
dp题
#include<iostream>
#include<cstring>
using namespace std;
const int L = 1e5+;
int n;
long long a[L],b[L];
long long ans;
long long dp[L][];
long long max(long long a,long long b)
{
return a>b?a:b;
}
int main()
{
cin>>n;
for(int i = ;i<=n;++i)cin>>a[i];
for(int i = ;i<=n;++i)cin>>b[i];
dp[n][] = a[n];dp[n][] = b[n];
dp[n-][] = dp[n][] + a[n-];
dp[n-][] = dp[n][] + b[n-];
for(int i = n-;i>=;--i)
{
dp[i][] += a[i];
dp[i][] += b[i];
dp[i][] += max(dp[i+][],dp[i+][]);
dp[i][] += max(dp[i+][],dp[i+][]);
}
cout<<max(dp[][],dp[][]); return ;
}
D1/D2. Submarine in the Rybinsk Sea
统计各串数的各个位对最终解的贡献即可。
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
const int L = 1e5+;
const long long MOD = ;
struct E{
char s[];
int l;
}str[L];
long long a[];
int n;
int NUM[];
int sum[];
long long ans;
int main()
{
cin>>n;
for(int i = ;i<n;++i)
{
cin>>str[i].s;
str[i].l = strlen(str[i].s);
} int LEN = ;
for(int i = ;i<n;++i)
{
NUM[str[i].l]++;
LEN = max(LEN,str[i].l);
}
LEN *=;
for(int i = ;i<;++i) sum[i] = NUM[i] + sum[i-];
for(int i = ;i<n;++i)
{
reverse(str[i].s,str[i].s+str[i].l);
for(int j = ;j<str[i].l;++j)
{
a[j*] += (str[i].s[j] - '')*(sum[] - sum[j]);
a[j*]%=MOD;
a[j* + ] += (str[i].s[j] - '')*(sum[] - sum[j]);
a[j*+]%=MOD;
}
for(int j = ;j<;++j)
{
if(NUM[j] == ) continue;
int l = str[i].l - j;
if(l<=) break;
for(int k=;k<=l;++k)
{
a[j*+k-] += (str[i].s[j + k - ]-'')** (NUM[j]);
a[j*+k-]%=MOD;
}
}
}
long long L = ;
for(int i = ;i<LEN;++i)
{
ans += (L%=MOD)*(a[i]%MOD);
ans%=MOD;
L*=;
}
cout<<ans<<endl; return ;
}
Codeforces Round #574 (Div. 2)补题的更多相关文章
- Codeforces Round #412 Div. 2 补题 D. Dynamic Problem Scoring
D. Dynamic Problem Scoring time limit per test 2 seconds memory limit per test 256 megabytes input s ...
- Codeforces Round #585 (Div. 2) [补题]
前言 2019.9.16 昨天下午就看了看D题,没有写对,因为要补作业,快点下机了,这周争取把题补完. 2019.9.17 这篇文章或者其他文章难免有错别字不被察觉,请读者还是要根据意思来读,不要纠结 ...
- Codeforces Round #786 (Div. 3) 补题记录
小结: A,B,F 切,C 没写 1ll 对照样例才发现,E,G 对照样例过,D 对照样例+看了其他人代码(主要急于看后面的题,能调出来的但偷懒了. CF1674A Number Transforma ...
- Codeforces Round #429 (Div. 2) 补题
A. Generous Kefa 题意:n个气球分给k个人,问每个人能否拿到的气球都不一样 解法:显然当某种气球的个数大于K的话,就GG了. #include <bits/stdc++.h> ...
- Codeforces Round #419 (Div. 1) 补题 CF 815 A-E
A-C传送门 D Karen and Cards 技巧性很强的一道二分优化题 题意很简单 给定n个三元组,和三个维度的上限,问存在多少三元组,使得对于给定的n个三元组中的每一个,必有两个维度严格小于. ...
- Codeforces Round #590 (Div. 3)补题
要想上2000分,先刷几百道2000+的题再说 ---某神 题目 E F 赛时是否尝试 × × tag math bitmask 难度 2000 2400 状态 ∅ √ 解 E 待定 F 传送门 第一 ...
- Codeforces Round #615 (Div. 3) 补题记录
第一次搞CF,结果惨不忍睹...还是太菜了 A:要用到全部的钱,所以总数必须是3的倍数,而且初始状态下任意一人的钱数不能超过总数除以3,否则没法分了 (也就这个签到算是在我能力范围之内了....) # ...
- Codeforces Round #617 (Div. 3) 补题记录
1296A - Array with Odd Sum 题意:可以改变数组中的一个数的值成另外一个数组中的数,问能不能使数组的和是个奇数 思路:签到,如果本来数组的和就是个奇数,那就OK 如果不是,就需 ...
- Codeforces Round #378 (Div. 2) D题(data structure)解题报告
题目地址 先简单的总结一下这次CF,前两道题非常的水,可是第一题又是因为自己想的不够周到而被Hack了一次(或许也应该感谢这个hack我的人,使我没有最后在赛后测试中WA).做到C题时看到题目情况非常 ...
随机推荐
- Postman请求运行顺序及Workflow
作为一款接口调试利器, Postman的更新迭代速度很快, 不断加入了很多新的功能.使的api设计,测试,监控, Mock,以及团队协作更加方便. 修改执行顺序 在遇到有接口依赖的情况, 我们往往需要 ...
- kubernetes 之部署metrics-server v0.3.1
Metrics-server简介 Metrics-server是用来替换heapster获取集群上资源指标数据的,heapster从1.11开始逐渐被废弃了. 在使用heapster时,获取资源指标是 ...
- Multiism四阶巴特沃兹低通滤波器的仿真实现
因为4阶巴特沃兹低通滤波器比较简单,所以省略设计过程和思路以及不必要的废话. 设计的滤波器的性能:截止频率大约是500HKZ,Rs = Rl = 32 欧姆. 预估滤波器大致的幅频特性曲线如下: 最初 ...
- ios端浏览器拍照上传到服务器,图片被旋转90度 php 解决方案
1.可以通过前端进行解决,本案例通过后端解决的 判断请求的浏览器的ua,如果是ios浏览器则进行90度旋转 重点来了: 必须确保检测的图片是ios设备上传的完整图片,不要在前端压缩过的,因为压缩后的图 ...
- ARTS打卡计划第十三周
Algorithms: https://leetcode-cn.com/problems/longest-continuous-increasing-subsequence/ 最长连续子序列. Rev ...
- Python选择指定文件夹的文件然后复制出其中几个文件到新的文件夹
""" 要求: 1.读取cdm文件的所有子文件夹,然后每个文件夹里面是抽出一个一个mp3后缀的文件. 遍历所有的子文件,然后将这些mp3文件,保存到一个新的文件夹.文件夹 ...
- Android webView加载图片显示过大的问题
webview的基本使用流程这里我就不重复说明了,本篇针对的是文章详情加载完成后出现的情况,这里我们使用的方法是:通过js脚本,重置img标签中图片的宽度和高度. 使用步骤: 1.此方法需要使用js, ...
- php屏蔽电话号码中间四位
php屏蔽电话号码中间四位 一.总结 一句话总结: 直接就是substr_replace函数:$str = substr_replace("13966778888",'****', ...
- rc-form 在 typescript 中的报错处理
1.创建 声明模块 index.d.ts import { Component, ClassicComponentClass, ClassType, ComponentClass, Component ...
- 搭建Django项目虚拟环境(Windows系统下)
一.安装virtualenv 我们可以使用正式的Python环境中的pip进行安装.进入cmd界面,运行“ pip install virtualenv ”,完成安装后,可以运行“ where vir ...