【题解】LFYZNoip前水题赛 T6
垃圾出题人们在30分钟内完成了讨论,出题,命题,造数据,跑std的所有环节
luv的化学竞赛题
题目背景
luv_letters 在肝化学竞赛题,他的梦想是混个省一,但是遗憾的是他今年的省二莫名消失了。
题目描述
话说societyniu比较欠扁,他嘲讽luv_letters的省二他都能拿,luv_letters当然不服2333.于是打算搞几份卷子来考考他。
luv_letters有n种化竞卷子,第i种卷子有ai道题。但是societyniu写了太多题他又会不爽(其实是怕输了
于是他规定他只能做K份卷子,并且为了公平起见,K份卷子被写的题数都必须是相同的,societyniu规定这个题数就是这K份卷子的题数的最大公约数。
为什么是最大公约数呢?因为他觉得题数是GCD的话他才会变成GG 的clevel donkey。
之前说了,societyniu热爱理科 因此他希望K种卷子的题数和最大。你能告诉他他最后总共会做多少题么?
输入输出格式
输入格式:
第一行两个正整数n,k。
第二行n个正整数,表示每份卷子的题数。
输出格式:
输出一个正整数表示societyniu会做多少题。
输入输出样例
3 1
1 2 3
3
说明
对于30%的数据,保证k≤n≤20。
对于50%的数据,保证输入中所有数小于5000。
对于100%的数据,保证输入中所有数小于500000,k≤n。
比赛链接:https://www.luogu.org/problemnew/show/T56342
好吧,这是我出的一道巨水的题
很显然:
题目就相当于问n个数里面选出k个的最大公约数最大是多少。
对于30%的数据可以直接暴搜一发。(多爽
对于50%的数据...我也不知道(笑,你们可以试试各种玄学剪枝优化qwq
对于100%的数据,先开500000大的桶存下每个数出现了几次,
然后枚举最后的答案gcd,
然后再暴力枚举所有它的倍数,看出现次数是否大于等于k就可以了。
这样做的复杂度最坏是O(n+n/2+n/3+…+n/n)=O(nlnn)的。
自行百度调和级数求和
std:
1 #include <bits/stdc++.h>
using namespace std;
int n, k, x, m, cnt[];
inline int qread(){
register int ch=getchar(),x=;
while(!isdigit(ch)) ch=getchar();
while (isdigit(ch)) x=(x<<)+(x<<)+(ch^''),ch=getchar();
return x;
9 } //随手敲快读
int main(){
scanf("%d%d", &n, &k);
while(n--){
x=qread();
cnt[x]++; //开桶存数出现了几次
m= m<x?x:m;
}
for(int i=m,tmp;i;i--){
tmp = ;
for(int j=i;j<=m;j+=i){ //暴力枚举其所有倍数直接看是否大于K
tmp += cnt[j];
21 }
if(tmp>=k){
printf("%lld\n",(long long)i*k);
return ;
}
26 }
27 }
真的挺水的
也可以百度K-GCD
【题解】LFYZNoip前水题赛 T6的更多相关文章
- Codeforces Round #368 (Div. 2) A. Brain's Photos (水题)
Brain's Photos 题目链接: http://codeforces.com/contest/707/problem/A Description Small, but very brave, ...
- poj1564 Sum It Up dfs水题
题目描述: Description Given a specified total t and a list of n integers, find all distinct sums using n ...
- World Finals 2017 (水题题解)
看大佬做2017-WF,我这种菜鸡,只能刷刷水题,勉强维持生活. 赛后补补水题. 题目pdf链接,中文的,tls翻译的,链接在这里 个人喜欢在vjudge上面刷题. E Need for Speed ...
- Codeforces Round #524 (Div. 2)(前三题题解)
这场比赛手速场+数学场,像我这样读题都读不大懂的蒟蒻表示呵呵呵. 第四题搞了半天,大概想出来了,但来不及(中途家里网炸了)查错,于是我交了两次丢了100分.幸亏这次没有掉rating. 比赛传送门:h ...
- Codeforces Round #519 by Botan Investments(前五题题解)
开个新号打打codeforces(以前那号玩废了),结果就遇到了这么难一套.touristD题用了map,被卡掉了(其实是对cf的评测机过分自信),G题没过, 700多行代码,码力惊人.关键是这次to ...
- PAT甲题题解-1012. The Best Rank (25)-排序水题
排序,水题因为最后如果一个学生最好的排名有一样的,输出的课程有个优先级A>C>M>E那么按这个优先级顺序进行排序每次排序前先求当前课程的排名然后再与目前最好的排名比较.更新 至于查询 ...
- Disillusioning #1 水题+原题赛(被虐瞎)
https://vijos.org/tests/542c04dc17f3ca2064fe7718 好一场 水题 比赛啊 t1直接上暴力费用流10分QAQ,虽然一开始我觉得可以不用的,直接dfs可以得出 ...
- Educational Codeforces Round 53 (Rated for Div. 2) (前五题题解)
这场比赛没有打,后来补了一下,第五题数位dp好不容易才搞出来(我太菜啊). 比赛传送门:http://codeforces.com/contest/1073 A. Diverse Substring ...
- Lyft Level 5 Challenge 2018 - Final Round (Open Div. 2) (前三题题解)
这场比赛好毒瘤哇,看第四题好像是中国人出的,怕不是dllxl出的. 第四道什么鬼,互动题不说,花了四十五分钟看懂题目,都想砸电脑了.然后发现不会,互动题从来没做过. 不过这次新号上蓝名了(我才不告诉你 ...
随机推荐
- 检查.net dll构建的目标平台是any cpu、x86、x64
有时候,需要检查构建的dll是否针对正确的平台 可以使用CorFlags.exe(它是.NET Framework SDK的一部分)从dll中查找此信息.运行CorFlags.exe将产生以下输出: ...
- Python地理位置信息库geopy的使用(二):根据中心点坐标,方向,距离计算坐标
上一篇文章我们介绍了geopy的基本使用,这一篇文章我们根据中心点坐标,方向,距中心点距离计算出对应的坐标点,这种用法官网并没有给出详细的文档,我们这里做一下说明 生成坐标点的具体方法 import ...
- 网络编程-socket(二)
https://www.cnblogs.com/mys6/p/10587673.html(网络编程) 持续通话 总结 # 网络开发的架构 :C/S B/S# mac地址是什么 -身份证号# ip地址 ...
- 【翻译】 Windows 内核漏洞学习—空指针解引用
Windows Kernel Exploitation – NullPointer Dereference 原文地址:https://osandamalith.com/2017/06/22/windo ...
- [JavaScript] Nginx实现跨域设置
假如跨域请求的接口为:http://xxx.cn/was5/web/search Nginx配置: 在conf/nginx.conf文件中 location / { root html; index ...
- win7 配置Windows Update 失败,还原更改,无法进入系统
win7 配置Windows Update 失败,还原更改,无法进入系统 win7 系统安装好后,忘记了需要关闭自动更新,某天自动更新补丁安装失败,进入下图状态,无法进入正常系统. 解决方案一:使用+ ...
- mybatis四大接口之 ResultSetHandler
1. 继承结构 2. ResultSetHandler public interface ResultSetHandler { // 将Statement执行后产生的结果集(可能有多个结果集)映射为结 ...
- D13——C语言基础学PYTHON
C语言基础学习PYTHON——基础学习D13 20180918内容纲要: 堡垒机运维开发 1.堡垒机的介绍 2.堡垒机的架构 3.小结 4.堡垒机的功能实现需求 1 堡垒机的介绍 百度百科 随着信息安 ...
- iOS开发-带Placeholder的UITextView实现
iOS中UITextField带有PlaceHolder属性,可以方便用于提示输入.但是同样可以进行文本输入的UITextView控件则没有PlaceHolder属性,还是有些不方便的,尤其是对于略带 ...
- supervisor 管理uwsgi 进程
Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动 重启.它是通过fork/exec的方式把这些被管理的进 ...