个人感受:这套题是真的难,以至于,拿了130分就第三了(说来羞耻,真的不想---)

问题 A: 乐曲创作

时间限制: 1 Sec  内存限制: 256 MB
提交: 370  解决:
58
[提交][状态][讨论版]

题目描述

小可可是音乐学院的一名学生,他需要经常创作乐曲完成老师布置的作业。

可是,小可可是一个懒惰的学生。所以,每次完成作业时,他不会重新创作一首新的乐曲,而是去修改上一次创作过的乐曲作为作业交给老师。小可可的乐曲由N个音调不同的音符组成,分别记为音符1…N。因此,他创作的乐曲是由1…N的一个排列构成,例如N=5时,他创作的乐曲可能为:2,1,3,5,4。但是,小可可每一次会按照一定的要求修改上一次创作的乐曲。他规定,修改过后的乐曲必须与上一次创作的乐曲的悦耳值相同。所谓悦耳值就是他所创作的乐曲,也就是1…N的排列中逆序对的个数。逆序对是指对于1…N的一个排列A1,A2,...,An中的两个数Ai,Aj,满足i<j而Ai>Aj,例如:2,1,3,5,4 这个排列中有2个逆序对,分别为:(2,1),(5,4)。可是,满足条件的排列有很多,小可可会选择在这些满足条件的排列中字典序大于上次创作乐曲的排列的字典序,且字典序尽量小的那一个排列作为新的乐曲。这里的字典序指:排列A:A1,A2…An和排列B:B1,B2…Bn,若存在一个数k,使得Ak<Bk,且A1=B1,A2=B2,……,Ak-1=Bk-1,我们就称排列A的字典序小于排列B的字典序。

由于小可可最近要参加学校的篮球比赛,他没有空余时间完成老师布置的作业,于是他希望作为他好友的你帮助他完成作业。

输入

第1行1个正整数N,表示小可可的乐曲由N个音调不同的音符组成。

第2行为N个不同的正整数,表示1…N的一个排列,即小可可上次创作的乐曲。

输出

输出只有一行,为1...N的一个排列,表示你帮助小可可修改后的乐曲。

数据保证有满足条件的解。

样例输入

3
2 3 1

样例输出

3 1 2

30% 的数据,1≤N≤10

60%的数据,1≤N≤1000 ;

100% 的数据,1≤N≤500000。

准备复赛

时间限制: 1 Sec  内存限制: 256 MB
提交: 167  解决:
10
[提交][状态][讨论版]

题目描述

今年的NOIP初赛真是简单,小可可不用吹灰之力就考进了复赛,但是复赛可没有那么简单了,小可可想要好好准备复赛,争取复赛拿个省一。今天小可可在复习树和图的最大匹配时就碰到这样的一个难题:n个节点满足以下性质的不同的树有多少种。

1、树是有标号的,每个节点被标上1到n之间的整数;

2、每个节点最多和其他3个节点相连,但是1号节点最多和其他2个节点相连;

3、这棵树的最大匹配(把树看成二分图后的最大匹配)数为k。

两棵树被认为不同当且仅当存在两个点u、v,在一棵树中u、v之间有边,另一棵树中u、v之间没边。

由于答案可能很大,所以小可可让你输出答案模1000000007
(109 + 7)。

输入

第一行包含两个正整数n,k。

输出

包含一行,为方案数。

样例输入

4 2

样例输出

12

提示

30% 2<=n<=5

60% 2<=n<=20

100% 2<=n<=50

星球联盟

时间限制: 1 Sec  内存限制: 256 MB
提交: 132  解决:
13
[提交][状态][讨论版]

题目描述

在遥远的S星系中一共有N个星球,编号为1…N。其中的一些星球决定组成联盟,以方便相互间的交流。

但是,组成联盟的首要条件就是交通条件。初始时,在这N个星球间有M条太空隧道。每条太空隧道连接两个星球,使得它们能够相互到达。若两个星球属于同一个联盟,则必须存在一条环形线路经过这两个星球,即两个星球间存在两条没有公共隧道的路径。

为了壮大联盟的队伍,这些星球将建设P条新的太空隧道。这P条新隧道将按顺序依次建成。一条新轨道建成后,可能会使一些星球属于同一个联盟。你的任务是计算出,在一条新隧道建设完毕后,判断这条新轨道连接的两个星球是否属于同一个联盟,如果属于同一个联盟就计算出这个联盟中有多少个星球。

输入

第1行三个整数N,M和P,分别表示总星球数,初始时太空隧道的数目和即将建设的轨道数目。

第2至第M+1行,每行两个整数,表示初始时的每条太空隧道连接的两个星球编号。

第M+2行至第M+P+1行,每行两个整数,表示新建的太空隧道连接的两个星球编号。这些太空隧道按照输入的顺序依次建成。

输出

输出共P行。如果这条新的太空隧道连接的两个星球属于同一个联盟,就输出一个整数,表示这两个星球所在联盟的星球数。如果这条新的太空隧道连接的两个星球不属于同一个联盟,就输出”No”(不含引号)。

样例输入

3 2 1
1 2
1 3
2 3

样例输出

3

提示

【样例1说明】

新建成的隧道连接2、3两个星球。

这条隧道1和2,2和3,1和3之间都存在环形线路。1,2,3同属一个联盟,答案为3

NOIP2017SummerTraining0713的更多相关文章

随机推荐

  1. Java:用Lambda表达式简化代码一例

    之前,调用第3方服务,每个方法都差不多“长”这样, 写起来啰嗦, 改起来麻烦, 还容易改漏. public void authorizeRoleToUser(Long userId, List< ...

  2. 百行go代码构建p2p聊天室

    百行go代码构建p2p聊天室 百行go代码构建p2p聊天室 1. 上手使用 2. whisper 原理 3. 源码解读 3.1 参数说明 3.1 连接主节点 3.2 我的标识 3.2 配置我的节点 3 ...

  3. python--对于装饰器的理解

    1.首先,有个原来写好的函数,完成一定的功能,比如下面的,就打印一句话(某程序被调用).简单点,容易帮我们想清楚程序是怎么执行的. ''' 原函数 ''' def fun1(): print(&quo ...

  4. MyEclipse安装步骤和破解

    Myeclipse的安装步骤 MyEclipse简介: MyEclipse,是在eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java.Java EE以及移动应用 ...

  5. 软件工程(GZSD2015)第二次作业进度

    贵州师范大学软件工程第二次作业 徐 镇 王铭霞 张 英 涂江枫 张 燕 安 坤 周 娟 杨明颢 杨家堂 罗文豪 娄秀盛 周 娟 李盼 岳庆 张颖 李丽思 邓婷 唐洁 郑倩 尚清丽 陈小丽 毛茸 宋光能 ...

  6. SNS团队Beta阶段第一次站立会议(2017.05.22)

    1.立会照片 2.每个人的工作 成员任务分工: 成员 今天已完成的工作 明天计划完成的工作 罗于婕 修改之前的文档 界面优化  龚晓婷 修改之前的文档 界面优化 林仕庄 修复不能发音bug  界面图标 ...

  7. 201521123099 《Java程序设计》第6周学习总结

    1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 注1:关键词与内容不求多,但概念之间的联系要清晰,内容覆盖 ...

  8. 201521123006 《Java程序设计》第6周学习总结

    1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 注1:关键词与内容不求多,但概念之间的联系要清晰,内容覆盖 ...

  9. 201521123014 《Java程序设计》第6周学习总结

    1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 1.2 可选:使用常规方法总结其他上课内容. GUI与Sw ...

  10. 201521123020 《Java程序设计》第3周学习总结

    本周学习总结 初学面向对象,会学习到很多碎片化的概念与知识.尝试学会使用思维导图将这些碎片化的概念.知识组织起来.请使用纸笔或者下面的工具画出本周学习到的知识点.截图或者拍照上传. 书面作业 1.代码 ...