Codeforces Round #669 (Div. 2) A、B题题解
Problem A - Ahahahahahahahaha
https://codeforces.com/contest/1407/problem/A

题意:
给定一个偶数数组(元素值 0,1),在删除一定的数组元素(最多 \(n / 2\) 个) 以后偶数位和 是否能等于 奇数位和。
在不改变原序列的情况下输出剩下的 k个数 \((n / 2 <= K <= n)\)
思路:
先统计 数组整体和 \(s\) , 如果 \(s > n / 2\) 即数组中一半以上是 \(1\),这种情况下只需删去 $ s % 2 $,奇数转偶数。具体可以参考以下代码
//Cpp
#include<bits/stdc++.h>
#define ll int long long
using namespace std;
int i, j, k;
string yn[2] = { "No\n","Yes\n" };
int main(){
int t; cin >> t; while (t--) {
int o = 0, e = 0, x = 0, n, s = 0; cin >> n;
int a[n];
for (i = 0; i < n; i++) {
cin >> a[i]; s += a[i];
}
if (s > n / 2)x++;
if (x)s -= s % 2;
else s = n - s;
cout << s << endl;
for (i = 0; i < s; i++)cout << x << " ";
cout << endl;
}
}
#python
for _ in " "*int(input()):
a=int(input())
z=list(map(int,input().split()))
s=z.count(0);k=a//2
s1=z.count(1)
if s>=s1:print(k);print('0 '*k)
else:print(k+k%2);print('1 '*(k+k%2))
Problem B - Big Vova
https://codeforces.com/contest/1407/problem/B

首先把a从大到小排序,因为最大的gcd肯定最大 所以直接输出a1,然后暴力找于a1gcd最大的元素并把它做上标记以此类推,on2找完所有元素,但是如果迭代中发现gcd==1了就可以跳出循环从大到小输出其数组元素就可以了
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int gcd(int a,int b){
if(b==0) return a;
else return gcd(b,a%b);
}
void solve(){
int n;cin>>n;
int a[n];
for(int i=0;i<n;i++) cin>>a[i];
sort(a,a+n);
for(int i=0;i<n/2;i++) swap(a[i],a[n-i-1]);
int ans=a[0],y;
for(int i=1;i<n;i++){
int mxm_gcd=1,y=i;
for(int j=i;j<n;j++){
int x=mxm_gcd;
mxm_gcd=max(gcd(a[j],ans),mxm_gcd);
if(mxm_gcd>x) {
y=j;
}
}
swap(a[i],a[y]);
ans=gcd(ans,a[i]);
}
for(int i=0;i<n;i++) cout<<a[i]<<" ";
cout<<"\n";
}
int main(){
int t;cin>>t;
while(t--) solve();
}
Codeforces Round #669 (Div. 2) A、B题题解的更多相关文章
- Codeforces Round #609 (Div. 2)前五题题解
Codeforces Round #609 (Div. 2)前五题题解 补题补题…… C题写挂了好几个次,最后一题看了好久题解才懂……我太迟钝了…… 然后因为longlong调了半个小时…… A.Eq ...
- Codeforces Round #599 (Div. 2)的简单题题解
难题不会啊…… 我感觉写这个的原因就是因为……无聊要给大家翻译题面 A. Maximum Square 简单题意: 有$n$条长为$a_i$,宽为1的木板,现在你可以随便抽几个拼在一起,然后你要从这一 ...
- Codeforces Round #669 (Div. 2) C. Chocolate Bunny 题解(交互)
题目链接 题目大意 有一个长度为n的全排列,你可以询问2n次,要你经过这个2n次的询问后,求出这个全排列 询问定义为:输入"? i j"输出\(p_{i} mod p_{j}\) ...
- Lyft Level 5 Challenge 2018 - Final Round (Open Div. 2) (前三题题解)
这场比赛好毒瘤哇,看第四题好像是中国人出的,怕不是dllxl出的. 第四道什么鬼,互动题不说,花了四十五分钟看懂题目,都想砸电脑了.然后发现不会,互动题从来没做过. 不过这次新号上蓝名了(我才不告诉你 ...
- BestCoder Round #11 (Div. 2) 前三题题解
题目链接: huangjing hdu5054 Alice and Bob 思路: 就是(x,y)在两个參考系中的表示演全然一样.那么仅仅可能在这个矩形的中点.. 题目: Alice and Bob ...
- Codeforces Round #669 (Div. 2)A-C题解
A. Ahahahahahahahaha 题目:http://codeforces.com/contest/1407/problem/A 题解:最多进行n/2的操作次数,我们统计这n个数中1的个数,是 ...
- Codeforces Round #310 (Div. 2)--A(简单题)
http://codeforces.com/problemset/problem/556/A 题意:给一个01字符串,把所有相邻的0和1去掉,问还剩下几个0和1. 题解:统计所有的0有多少个,1有多少 ...
- Codeforces Round #416 (Div. 2)(A,思维题,暴力,B,思维题,暴力)
A. Vladik and Courtesy time limit per test:2 seconds memory limit per test:256 megabytes input:stand ...
- Codeforces Round #336 (Div. 2)-608A.水题 608B.前缀和
A题和B题... A. Saitama Destroys Hotel time limit per test 1 second memory limit per test 256 megabyte ...
- Codeforces Round #316 (Div. 2) (ABC题)
A - Elections 题意: 每一场城市选举的结果,第一关键字是票数(降序),第二关键字是序号(升序),第一位获得胜利. 最后的选举结果,第一关键字是获胜城市数(降序),第二关键字是序号(升序) ...
随机推荐
- 带你玩转 Vite + Vue3 高低版本常用玩法
一.首先来个 Vite 的通用简介 Vite 是一种新型前端构建工具,在我们保险前端项目中已经推动并应用很久了,Vite 能够显著降低构建时间,提升前端开发效率. 它主要由两部分组成: 一个开发服务器 ...
- 吉特日化MES-业务架构第一版图
- Spring Cache + Caffeine的整合与使用
前言 对于一些项目里需要对数据库里的某些数据一直重复请求的,且这些数据基本是固定的,在这种情况下,可以借助简单使用本地缓存来缓存这些数据.这些介绍一下Spring Cache和Caffeine的使用. ...
- 基于yolo的口罩识别(开源代码和数据集)
2020年开头真的很人意外,开年爆发了疫情.此次疫情牵动了各行各业,在这里衷心的感谢奋斗在一线的医疗工作者:您们辛苦了.作为一名非医专业的学生,在这样情况下,除了不乱跑以外,我也想以另一种方式去致敬那 ...
- bash shell笔记整理——basename和dirname命令
bashname命令作用 去掉给定name的目录部分,如果指定了 SUFFIX, 就 同时去掉SUFFIX(后缀).具体看示例吧. bashname语法 Usage: basename NAME [S ...
- 关于`dial unix /var/run/docker.sock: connect: permission denied`的处理方法笔记
之前遇到的一个问题,使用非root用户时操作docker提示无权限,在查阅了一些文章之后自己又摸索出了一些更方便的方法,顺手记录下来. 一.问题发现 根据报错信息dial unix /var/run/ ...
- thymeleaf使用
thymeleaf使用 1.依赖 <parent> <artifactId>spring-boot-starter-parent</artifactId> < ...
- 牛客网刷Java记录第一天
第一题 下列程序输出啥? public class StringDemo{ private static final String MESSAGE="taobao"; public ...
- shutdown详解
linux下shutdown命令详解 shutdown命令安全地将系统关机. 有些用户会使用直接断掉电源的方式来关闭linux,这是十分危险的.因为linux与windows不同,其后台运行着许多进程 ...
- cookie和session的一些疑惑以及ai解答
我: 那么当浏览器关闭的时候,当再次访问这个地址的时候,为什么之前设置的cookie没有被删除掉?而且按照你说的这次可能会生成一个新的sessionID,那么cookie里面的其他数据,它是如何获取上 ...