NOIP2017SummerTraining0726
三道比较简单的题,还以为是八校考试的题目,但是并不是,无语了,第三题其实看了挺久的,一看到图,就想到了二分图,网络流之类的算法,但是尽力往这个方向想了好久都没什么思路,
最后从简单入手,然而没什么结果,第一题是真的水,一推就知道了。
谜题
时间限制: 1 Sec 内存限制: 128 MB
提交: 90 解决: 47
[提交][状态][讨论版]
题目描述
输入
输出
样例输入
样例输出
提示
#include<cstdio> #include<algorithm> #include<cmath> #include<iostream> #include<iostream> using namespace std; int n; int main() { scanf("%d",&n); ) printf("YES\n"); else printf("XLSB\n"); }
题意什么的不要了
选修课
时间限制: 1 Sec 内存限制: 128 MB
提交: 172 解决: 61
[提交][状态][讨论版]
题目描述
输入
输出
样例输入
1
2
样例输出
提示
#include<cstring> #include<algorithm> #include<iostream> #include<cmath> #include<cstdio> using namespace std; int n; ]={}; ]; bool cmp(int x,int y){return x>y;} long long C(int m,int n) { ; ;i<=m;i++) res=(long long)(res*i); ;i<=n;i++) res=(long long)(res/i); return res; } int main() { scanf("%s%d",s,&n); int len=strlen(s); ;i<len;i++) a[s[i]-]++; sort(a+,a++,cmp); ; ;i<=n;i++) res+=a[i]; printf("%lld ",res); int l=n,r=n; &&a[l]==a[n]) l--; l++; &&a[r]==a[n]) r++; r--; long long ans; ans=C(r-l+,min(n-l+,r-n)); printf("%lld\n",ans); }
满分代码
质数
时间限制: 1 Sec 内存限制: 128 MB
提交: 106 解决: 20
[提交][状态][讨论版]
题目描述
宿管有一套神奇的控制系统来控制寝室的灯的开关:
输入
输出
样例输入
10 2
2 5
21 4
2 3 5 7
100 1
5
100 3
3 19 7
样例输出
11
20
42
提示
这道题就是求√n以内的质数,这样比√n大的质数两两之间已经超过了n因此不会相互影响,可以发信啊每个开关只开一次是有意义的,多开没意义。
#include<cstdio> #include<algorithm> #include<cmath> #include<iostream> #include<cstring> #include<queue> using namespace std; ,NN=; int n,m,ans,k; int boo[NN],prime[NN]; bool cmp(int x,int y){return x<y;} void dfs(int ci) { if (ci==k) { ,num; queue<int>q; while(!q.empty()) q.pop(); ;i<=m;i++) { num=; for (int j=prime[i];j<=n;j+=prime[i]) ) num++; else num--; ) { q.push(i); for (int j=prime[i];j<=n;j+=prime[i]) boo[j]^=; } } ;i<=n;i++) if (boo[i]) x++; ans=max(ans,x); while (!q.empty()) { int i=q.front(); q.pop(); for (int j=prime[i];j<=n;j+=prime[i]) boo[j]^=; } } else { ci++; dfs(ci); for (int i=prime[ci];i<=n;i+=prime[ci]) boo[i]^=; dfs(ci); for (int i=prime[ci];i<=n;i+=prime[ci]) boo[i]^=; } } void solve() { ans=-INF; memset(boo,,sizeof(boo)); dfs(); printf("%d\n",ans); } int main() { int Cas; scanf("%d",&Cas); while (Cas--) { scanf("%d%d",&n,&m); ;i<=m;i++) scanf("%d",&prime[i]); sort(prime+,prime+m+,cmp); k=m; while (prime[k]>(int)sqrt(n)) k--; solve(); } }
NOIP2017SummerTraining0726的更多相关文章
随机推荐
- 神奇的background
background:url() fixed .... 可以实现页面向下滚动时背景图片 保持位置不变 感觉好像背景在随鼠标滚动而滚动一样
- 在Ubuntu16.04上部署LXC容器管理系统的相关步骤
打算安装一个LXC linux容器管理的软件来分配使用资源并配置不同的编程环境,这样就方便大家的使用,步骤如下(宿主机的环境都搭建好了,对应显卡的驱动等): 参考网站: 简单入门和相关指令总结:htt ...
- docker 添加国内源
docker for mac 获取地址:dao镜像地址  # 163的地址 https://hub-mirror.c.163.com docker for mac的设置操作:   点击Apply ...
- 使用Sidecar将Node.js引入Spring Cloud
网上看到的一篇文章,觉得写得挺好,现转载于此,以方便需要的网友查阅. 该文章介绍了非JAVA语言提供的应用集成到Spring Cloud的这样一个实现,以便我们使用其他语言作为参考. 感谢原作者分享, ...
- LINUX服务器上新增用户名
最近所里的机群停了,需要用老板的服务器跑程序,这里首先得在老板的服务器上新增一些用户名.新增用户名方法如下: 1.利用useradd添加用户名,并指定用户名目录.脚本解释器.用户名 sudo user ...
- 数据库学习任务四:数据读取器对象SqlDataReader、数据适配器对象SqlDataAdapter、数据集对象DataSet
数据库应用程序的开发流程一般主要分为以下几个步骤: 创建数据库 使用Connection对象连接数据库 使用Command对象对数据源执行SQL命令并返回数据 使用DataReader和DataSet ...
- python--学校管理系统(只做了学校管理的接口)
1.老师的要求是做学校管理.学生.老师的接口,本文档,只做了学校管理的接口 2.具体要求: 角色:学校.学员.课程.讲师 要求: 1. 创建北京.上海 2 所学校 2. 创建linux , pytho ...
- jq分页插件,支持动态,静态分页的插件,简单易用。
工作中经常要用到分页功能.为了方便封装了一个比较通用的分页插件开源出来了,简单易用. 官网:https://cwlch.github.io/Ch_Paging 下载地址:https://github. ...
- Swing-JComboBox用法-入门
JComboBox是Swing中的下拉菜单控件.它永远只能选中一个项目,然而比单选按钮节省空间.如果使用setEditable设置为true则内部选项的文本可以编辑,因此这种组件被称为组合框.注意,对 ...
- 201521123016《Java设计与程序》第6周学习总结
1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 2. 书面作业 1.clone方法 1.1 Object对 ...