T1 青蛙跳荷叶

从前,有一个小青蛙决定去荷叶上练习跳跃.现在有n个荷叶排成一排,小青蛙一开始在最左边的荷叶(一号荷叶)上,当然,这个青蛙是很牛X的,可以在任意两个荷叶之间跳跃。
有一天这个青蛙突发奇想,想用一种奇怪的方式完成跳跃练习:
1.它希望每次跳到不同的荷叶上
2.每一次跳的距离不同
当然,作出这个决定是何其的简单,但是跳跃方式是何其的困难……,所以他希望你可以帮他解决这个问题.
下面给出这个问题严格的数学定义,请给出1到n这n个自然数的一个排列a1,a2,a3……an
使得
1:a1=1
2:对于任意的i<>j(1<=i,j<=n-1),有|ai-a(i+1)|<>|aj-a(j+1)|,其中n是给定的

输入输出

输入

一行,一个数n

样例输入

3

输出

一行,n个数,用一个空格隔开,末尾没有多余空格

样例输出

1 3 2

思路

首先要找到规律,输出是按照1,n,2,n−1...1,n,2,n-1...1,n,2,n−1...
于是…

代码

#include<cstdio>
#include<cmath>
#include<iostream>
using namespace std;
int n,a;
int main()
{scanf("%d",&n);for(int i=1; i<=n-a; ++i){if (i!=n-a)//没有到最后是只剩下一个的时候printf("%d %d ",i,n-a),++a;//按规律输出else printf("%d",i);}return 0;
}

数据范围

对于20%的数据,1< n <=4
对于100%的数据,1< n <=10000


T2 排排坐(未完成)

小B喜欢在蓝心网玩游戏,一天他玩到了这个游戏:他感觉非常好玩…于是他就YY出了一个类似的简易模型…
游戏规则:每次点击一个小朋友,他和他的周围的小朋友都会改变状态(蹲下的变成了站起来的,站起来的变成了蹲下的)
我们将这个抽象成如下图所示的1*N的图.对于一个单元格,黑色表示小朋友是站起来的,反之,蹲下的小朋友是是白色的.Source表示初始状态,Target表示目标状态.

现在小B有点偷懒,希望作为神牛的你帮小B算出初始状态到目标状态的最少点击数.

输入输出

输入

第一行为N表示小朋友的个数.
第二行是初始状态,有N个数,每个数不是0就是1.(0表示小朋友是蹲下的,1表示小朋友是站起来的)
第三行的结构跟第二行类似,表示目标状态

样例输入

9
0 1 0 0 0 1 0 0 0
1 0 1 0 1 0 1 0 0

输出

一个数X,表示初始状态到目标状态的最少点击数。
如果无法到达目标,则请输出"Boring"

样例输出

2

解释

只需要点击第二个和第六个点即可。

数据范围

对于100%的数据,N<=10


T3 分离与合体(未完成)

经过在机房里数日的切磋,LYD从杜神牛那里学会了分离与合体,出关前,杜神牛给了他一个测试…
杜神牛造了n个区域,它们紧邻着排成了一行,编号1~n。在这每个区域里都放着一把OI界的金钥匙,每一把都有一定的价值,LYD当然想得到它们了。然而杜神牛规定LYD不可以一下子把它们全部拿走,而是每次只可以拿一个。为了尽快的拿到所有的金钥匙,LYD自然就用上了刚学的分离与合体特技。
一开始LYD可以选择从1–n-1的任何一个区域(记为K)进入,进入后LYD会在K区域发生分离,从而分离为两个小LYD。分离完成的同时会有一面墙在K和K+1区域之间升起,从而把1–k和k+1–n阻断为两个独立的区间。然后两个小LYD分别进入1–k和k+1–n,并在各自的区间内任选除了区间末尾区域以外(即1–k-1或k+1–n-1)的任何一个区域再次发生分离,就一共有了4个小小LYD……重复进行以上所叙述的分离,直到每个小LYD发现自己所在的区间只剩下了一个区域,他们就可以抱起自己梦寐以求的OI金钥匙。
  但是LYD不能就这么分成n多个个体存在于世界上,这些小LYD还会再合体,合体的两个小LYD所在的区间中间的墙会消失。合体会获得一定的价值,计算方法是:(合并后所在区间的左右端区域里金钥匙的价值之和) 乘 (之前分离的时候所在区域的金钥匙价值)。
{例如:LYD曾经在1-3区间中的2号区域分离成为1-2和3两个区间,合并时获得的价值就是(1号金钥匙价值+3号价值)*(2号金钥匙价值)。}
LYD请你编程求出最终可以获得的总价值最大是多少。并按照分离阶段从前到后,区域从左向右的顺序,输出发生分离的区域编号 (例如:先打印1分为2的分离区域,然后从左到右打印2分为4的分离区域,然后是4分为8的…) 。
注意:若有多种方案,选择分离区域尽量靠左的方案(也可以理解为输出字典序最小的)。

输入输出

输入

第一行:正整数n (2<=n<=300)
第二行:n个正整数,表示1~n区域里每把金钥匙的价值。
保证答案及运算过程中不超出longint范围。

样例输入

7
1 2 3 4 5 6 7

输出

第一行一个数,即获得的最大价值
第二行按照分离阶段从前到后,区域从左向右的顺序,输出发生分离的区域编号,中间用一个空格隔开,若有多种方案,选择分离区域尽量靠左的方案(也可以理解为输出字典序最小的)。

样例输出

238
1 2 3 4 5 6

数据范围约定

对于%20的数据 N<=10
对于%40的数据 N<=50
对于%100的数据 N<=300 a[i]<=300


T4 TX大战360

2010年11月3日,是一个难忘的日子。 腾讯发布消息:存360则,不留QQ。留QQ,则须卸360。 360则表示360与QQ可以共存。 这也就标志着腾讯与360的大战就此开始!
现在,腾讯与360由于身处异地,非常迫切地想在最短的时间内相遇,然后干一架。但是由于双方的技术员都在努力地编程序想干掉对方,所以他们希望你来帮他们找到一个最好的方案使得相遇的时间最短。
在此我们定义“相遇”为:两个人皆在同一个有编号的城市上就可以了,并且这两个人均可以站在原地等另外一个人。也就是说,在这里我们不考虑两人在路中间相遇。

输入输出

输入

输入数据第一行:N和M(用空格隔开) 表示这是一个N*N的图并且有M条边,第二行到第M+1行 为这个图的详细信息。
每行共有被空格隔开的三个数:a b c。表示编号为a的城市到编号为b的城市
有一个双向边,并且要过这条双向边所需要花费的时间为c。
最后一行有两个数:S和T,S表示腾讯所处的城市(也就是深圳),T表示360所处的 城市(也就是北京)

样例输入

3 3
1 2 1
2 3 1
1 3 1
1 3

输出

输出只有一行,D,表示二者“相遇”的最短时间。当然,如果无法相遇则输出“Peace!”“Peace!”“Peace!”

样例输出

1

数据范围

每组都是n=5000 m=5000 并且保证运算过程中的所有值都不会超过117901063

思路

首先两遍SPFASPFASPFA,分别算出从sss到ttt的最短路和从ttt到sss的最短路,然后在每一个点求一个两条路中的最大值,最后从这些路径中找一个最小值就是答案

代码

#include<cstdio>
#include<cstring>
#include<cmath>
#include<queue>
#include<iostream>
using namespace std;
int n,m,x,y,t,tot; int maxx[5005],ans;
int h[5005],dis[5005],dis2[5005];
bool b[5005];
struct opp
{int w,z,p;
}wh[10005];
int main()
{memset(dis2,127/3,sizeof(dis2));memset(dis,127/3,sizeof(dis));ans=dis[0];scanf("%d%d",&n,&m);for (int i=1; i<=m; ++i){scanf("%d%d%d",&x,&y,&tot);wh[++t]=(opp){y,tot,h[x]};h[x]=t;wh[++t]=(opp){x,tot,h[y]};h[y]=t;}int s;scanf("%d%d",&s,&t);queue<int>l;b[s]=1; dis[s]=0;l.push(s);while (l.size()){int tt=l.front();l.pop();for (int i=h[tt];i;i=wh[i].p){if (dis[wh[i].w]>dis[tt]+wh[i].z){dis[wh[i].w]=dis[tt]+wh[i].z;if (!b[wh[i].w]){l.push(wh[i].w);b[wh[i].w]=1;}}}b[tt]=0;}//第一遍SPFAmemset(b,0,sizeof(b));queue<int>l2;dis2[t]=0; b[t]=1;l2.push(t);while (l2.size()){int tt=l2.front();l2.pop();for (int i=h[tt];i;i=wh[i].p){if (dis2[wh[i].w]>dis2[tt]+wh[i].z){dis2[wh[i].w]=dis2[tt]+wh[i].z;if (!b[wh[i].w]){l2.push(wh[i].w);b[wh[i].w]=1;}}}b[tt]=0;}//第二遍SPFAans=117901063;for (int i=1; i<=n; ++i)ans=min(ans,max(dis[i],dis2[i]));//求答案if (ans==117901063) printf("Peace!");else printf("%d",ans);return 0;
}

【2019.3.02】ssl初一模拟试题相关推荐

  1. 华理2019信号与系统考研模拟试题(含数字信号处理)

    华东理工大学2019年信号与系统(含数字信号处理)814 考研模拟试题 链接:https://pan.baidu.com/s/12RpiS7uxu5BF59zMCkIeCQ  提取码:c4zn

  2. 2019学位计算机模拟试题,2019年学位英语考试模拟试题及答案.doc

    2019年11月学位英语考试试题及答案[冲刺模拟] 一.完成对话(1-10) 1.--Let me help you prepare dinner, Mom. -- __________, but y ...

  3. 2019网络教育计算机统考模拟试题,最新2019年网络远程教育《计算机应用基础》统考模拟题库500题(含答案)...

    2019年网络远程教育统考<计算机应用基础>考试 题库500题[含答案] 一.选择题 1.启动ExCEl2003应用程序后自动建立的工作簿文件的文件名为_______. A.工作簿 B.工 ...

  4. 2019华为精英挑战赛初赛模拟试题总结思考

    小型机通常采用RISC和Unix操作系统 T 小型机操作系统一般是UNIX,PC服务器操作系统一般是windows.但是题干中RISC不是操作系统,是精简指令集计算机,是计算机***处理器的一种设计模 ...

  5. 计算机应用基础专科,2019年自考《计算机应用基础》专科模拟试题及答案

    2019年自考<计算机应用基础>专科模拟试题及答案 单选题 1.第一台电子数字计算机使用的主要元器件是______. A:大规模和超大规模集成电路 B:集成电路 C:晶体管 D:电子管 答 ...

  6. 2019年3月未来教育计算机二级题库,2019年3月计算机二Access考试操作模拟试题001...

    2019年3月计算机二Access考试操作模拟试题001 浏览次数:     时间:2019/03/28 一.基本操作题 在考生文件夹中有一个"Acc1.mdb"数据库. (1)在 ...

  7. 计算机单招语文试题,2019年高职单招语文模拟试题

    2019年高职单招语文模拟试题2019-02-21 13:17:22文/叶丹 学校单招的考试形式一般为"文化联考+综合素养测试"相结合的考试模式.文化联考包括语数英三门科目:综合素 ...

  8. 2019学位计算机模拟试题,2019年下半年成人学位英语模拟试题1

    [导语]不积跬步,无以至千里,不积小流,无以成江海.无忧考网整理为大家整理了"2019年下半年成人学位英语模拟试题1",欢迎阅读参考!更多相关讯息请关注无忧考网! 1.You ca ...

  9. 2016年4月计算机组成原理试题答案,2019年4月江苏自考02318计算机组成原理模拟试题及答案...

    2019年4月江苏自考02318计算机组成原理考试时间:4月13日(星期六)上午9:00-11:30.考期临近,为帮助考生备考,下面小编搜集整理了2019年4月江苏自考02318计算机组成原理模拟试题 ...

最新文章

  1. NYOJ--811--变态最大值
  2. Win7编译volley成jar包
  3. 生态伙伴 | Canva上线飞书应用目录,帮你零门槛轻松做出大师级设计!
  4. springAop源码分析
  5. python学习 01 变量
  6. 10次相遇我才知道什么是成熟的爱--转
  7. MFC中的GDI绘图
  8. 哪些计算机p玩游戏,有了这个神器,你的电脑玩什么游戏都带得动
  9. 巨一自动化工业机器人_2021第11届深圳国际工业自动化及机器人展览会
  10. 高等数学下-赵立军-北京大学出版社-题解-练习12.3
  11. 嵌入式里如何给内存做压力测试?不妨试试memtester
  12. hive sql练习_经典的SparkSQL/Hive-SQL/MySQL面试-练习题
  13. 计算机网络7种类型,OSPF中7种类型LSA
  14. BZOJ5249:[九省联考2018]IIIDX——题解
  15. 汇编语言跳转指令总结
  16. oracle查询备份存储路径,Oracle 数据库备份与恢复(RMAN介绍一)
  17. 青龙面板基本脚本运行必装依赖 一键式安装脚本安装依赖 2023年3月28日
  18. 【学术前沿趋势分析 】
  19. DDR4时序标准规范(二)
  20. 关于移相网络的深入分析

热门文章

  1. ESP8266-Arduino编程实例-MQ-135空气质量检测传感器驱动
  2. [debug]THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=405 error=11 : invalid argume
  3. 西红柿鸡蛋热面烹饪步骤
  4. 联诚发总裁龙平芳受邀出席航城街道高质量发展暨招商推介大会!
  5. Martin Fowler微服务论文翻译
  6. 途志传媒:打造抖音短视频个人ip有何技巧?
  7. 如何打造智能、高效的生产管理系统?
  8. 如何将大的视频文件压缩成小的视频文件?
  9. PS制作素雅白色开关按钮,UI设计教程
  10. 香港出入境政策(更新2023.2.3港府发布会)