Codeforces Round #452 (Div. 2)
第一次打。。(太弱(+99积分是几个意思
A
题意:一堆数,只有1和2,问最多凑出多少个3.
分情况即可
#include<cstdio>
int main(){
int a=0,b=0,k,n;
scanf("%d",&n);
while(n--)scanf("%d",&k),k==1?++a:++b;
if(a<=b)printf("%d\n",a);
else printf("%d\n",b+(a-b)/3);
return 0;
}
B
题意:问你有没有可能找出连续的n个月天数与给定的相同。
这个打表枚举判断即可。
用py的切片很容易实现
据说很多人被hack了,还是复制一遍稳啊
l=[
31,28,31,30,31,30,31,31,30,31,30,31,
31,28,31,30,31,30,31,31,30,31,30,31,
31,28,31,30,31,30,31,31,30,31,30,31,
31,29,31,30,31,30,31,31,30,31,30,31,
]
l+=l
n=int(input())
k=list(map(int,input().split()))
lim=12*4*2-n+1
for i in range(0,lim):
if k==l[i:i+n]:
print("YES");exit()
print("NO")
C
题意:一个排列,分成两个集合,使和的差最小,输出最小的差和任意一组方案。
先当做n%40看,显然一个集合\([1,\frac{n}{4}]\cup (\frac{3}{4}n,n]\)即可。ans=0
n%41:所有集合数++,剩的1放任意一个集合。ans=1
n%42:所有集合数++,剩的1放肛♂才没放1的集合里。ans=1
n%43:所有集合数++,剩的1放n%4==2时放的1的集合里。ans=0
OjbK
#include<cstdio>
#define rg register
int main(){
int n;scanf("%d",&n);
switch(n%4){
case 0:
puts("0");
printf("%d ",n/2);
for(rg int i=1;i<=n>>2;++i)printf("%d %d ",i,n-i+1);
break;
case 1:
puts("1");
n-=1;
printf("%d ",n/2);
for(rg int i=1;i<=n>>2;++i)printf("%d %d ",i+1,n-i+2);
break;
case 2:
puts("1");
n-=2;
printf("%d ",n/2+1);
for(rg int i=1;i<=n>>2;++i)printf("%d %d ",i,n-i+1);
printf("%d",n+1);
break;
default:
puts("0");
n-=3;
printf("%d ",n/2+2);
for(rg int i=1;i<=n>>2;++i)printf("%d %d ",i+1,n-i+2);
printf("%d 1",n+2);
}
return 0;
}
D
题意:[1,n]里选两个不重复的数相加末尾9最多有多少个?输出方案数
先得到最多多少个,然后枚举满足的数(脑补证明,此数不会相对99...9太大)
然后算一算值域
#include<cstdio>
#include<algorithm>
#define rg register
typedef long long ll;
ll bin[1005];ll lim,n;
ll p[]={1,10,100,1000,10000,100000,1000000,10000000,100000000,1000000000,10000000000ll,100000000000ll};
ll ans=0;
int solve(int w){
static ll x,l,r;
x=w*p[lim]+bin[lim];l=std::max(1ll,x-n),r=std::min(n,x-1);
if(l<=r)return (r-l+1)/2;
else return 0;
}
int main(){
scanf("%I64d",&n);
for(rg int i=1;i<=10;i++)bin[i]=bin[i-1]*10+9;
if(n<=4){printf("%I64d\n",n*(n-1)/2);return 0;}
for(lim=1;lim<=10;lim++)
if(n*2<bin[lim]){lim--;break;}
for(rg int i=0;i<1000;i++)ans+=solve(i);
printf("%I64d\n",ans);
return 0;
}
Codeforces Round #452 (Div. 2)的更多相关文章
- Codeforces Round #452 (Div. 2) A B C
Codeforces Round #452 (Div. 2) A Splitting in Teams 题目链接: http://codeforces.com/contest/899/problem/ ...
- Codeforces Round #452 (Div. 2) 899E E. Segments Removal
题 OvO http://codeforces.com/contest/899/problem/E Codeforces Round #452 (Div. 2) - e 899E 解 用两个并查集(记 ...
- Codeforces Round #452 (Div. 2)-899A.Splitting in Teams 899B.Months and Years 899C.Dividing the numbers(规律题)
A. Splitting in Teams time limit per test 1 second memory limit per test 256 megabytes input standar ...
- Codeforces Round #452 (Div. 2) C. Dividing the numbers(水)
C. Dividing the numbers Petya has n integers: 1, 2, 3, ..., n. He wants to split these integers in t ...
- 【Codeforces Round #452 (Div. 2) A】 Splitting in Teams
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 贪心 1优先和2组队. 如果1没有了 就结束. 如果1还有多余的. 那么就自己3个3个组队 [代码] #include <bi ...
- 【Codeforces Round #452 (Div. 2) B】Months and Years
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 闰,平,平 平,闰,平 平,平,闰 平,平,平 4种情况都考虑到就好. 可能有重复的情况. 但是没关系啦. [代码] #includ ...
- 【Codeforces Round #452 (Div. 2) C】 Dividing the numbers
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] n为偶数. l = 1, r = n (l,r)放在一组 l++,r-- 新的l,r放在另外一组 直到l+1==r 这个时候,判断两 ...
- 【Codeforces Round #452 (Div. 2) D】Shovel Sale
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 让N乘2->a 然后看一下位数是多少. 假设有x位(x>=2) 则(0..(a%10-1) ) + (99..9)[x- ...
- Codeforces Round #366 (Div. 2) ABC
Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...
随机推荐
- SQL Server 常用数据类型
char: 固定长度,存储ANSI字符,不足的补英文半角空格. varchar: 可变长度,存储ANSI字符,根据数据长度自动变化. nchar: 固定长度存储Unicode字符,汉字英文 ...
- 配置nginx官网yum源
由于yum源中没有我们想要的nginx,那么我们就需要创建一个“/etc/yum.repos.d/nginx.repo”的文件,其实就是新增一个yum源 二.添加nginx.repo 文件: [roo ...
- TortoiseGit bonobo gitserver记住帐号密码
记住帐号密码有两种方式: 针对服务器存储用户名密码 设置方式为在windows用户存储位置创建文件_netrc,没有后缀名.用文本编辑内容,格式为 machine 115.29.141.162 只 ...
- svn检出项目,Project *** is already imported into workspace
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.如果从svn检出的项目 Import ---- Existing Maven Pro ...
- pandas高级操作总结
1.pandas中的列的分位数 # 查看列的分位数 import pandas as pd # set columns type my_df['col'] = my_df['col'].astype( ...
- XtraEditors一、总体介绍
一.所有编辑器的公共功能 全部都可以绑定数据: 全部都可以独立使用或用于由 Developer Express 提供的容器控件 (XtraGrid.XtraVerticalGrid.XtraTreeL ...
- 评微软收购GitHub
前段时间,微软正式宣布以75亿美元收购GitHub.除了微软和GitHub以外,也许对这笔并购最在意的,正是微软的同城敌友,亚马逊.在我看来,GitHub也许是微软史上最好的收购. 75亿美元贵不贵? ...
- jar的解压与打包
当我们在公司上班时候,时长需要将本地开发的作业打包上传到集群运行,由于项目过多依赖会导致jar比较庞大,因此每一次上传都比较浪费时间,为了节省时间可以使用两种办法: 1:将所有依赖一次性上传到集群上, ...
- swoole_table测试
public function test() { $count = []; $count[] = ['key' => 'name', 'type' => ...
- Electron简介和安装使用
一.Electron简介Electron的应用,使得了JS不仅仅可以BS端项目,还可以做CS端项目. 另外今天之所以研究下Electron,还是因为公司的需要,业务场景是,通过Electron.js开 ...