总结:这次比赛成绩并不理想,虽然策略得当

\(P.S.\):太多题有多组数据,但是样例只有一个数据

各题题解和改题情况

T1 匹配

题面

描述

给你一个由{a,b…z,A,B….Z}组成的字符串,我们把大写字母{A,B….,Z}当作括号,这26个字母形成13对括号,(A,Z),(B,Y)………(M,N),每对中的第一个字母表示左括号”(”,第二个字母表示右括号”)”。

一个匹配的表达式是指左括号和右括号要配对,也就是说所有的左括号的右边都有一个右括号和它配对,而且如果一个左括号在某一个配对的括号的中间,那么跟它配对的右括号也必须在该配对的括号中间。

例如AabcZBBefYeY是一个匹配的表达式。而AabcBZY不是,因为(B,Y)中在(A,Z)的中间,而Y不在。同样AabcZZA也不是,因为第二个Z没有配对的A。

小写字母{a,b,…z}不表示括号,可以出现在任何地方。你的任务是决定给定的字符串是否是匹配的。

输入

输入包括多组测试数据,每组测试数据第一行是一个整数N,表示字母的个数,接下来第二行是N个字母。

输出

对于每组测试数据,输出1或0,1表示匹配,0表示不匹配。

样例输入

12

AabcZBBefYeY

样例输出

1

题目大意

每两个字母对应一种匹配的括号,具体的,如 (A,Z),(B,Y)………(M,N)

问你给定的字符串是否满足括号匹配(小写字母啥也不是)

总结 & 题解

这道题其实并不难,但是要细心,学会造对拍数据。

真的是裸的 \(O(n)\) 栈,但是要注意



感谢某位比我先考完试的大喊了一声提醒了我

可是我加了一个多组数据的时候



一个return 0拯救了我!


应得:

实际:

T2 生日蛋糕

题面

描述

今天是你的生日,家里给你买了个\(N*N\)的蛋糕,蛋糕被分成\(N*N\)个单元格,水平和垂直方向各切一刀,这样分成4份。

然后你妹妹、爸爸、妈妈依次取一份,最后才轮到你取。

蛋糕上有的单元格上有巧克力,有的没有,不幸的是你一家4口都喜欢吃,而且每个人都很自私,轮到他取的时候都会毫不客气地取其中巧克力最多的蛋糕。

问你该如何切才能使得自己获得最多多少个巧克力。

如下图的蛋糕,其中”#”表示有巧克力,”.”表示没有.



下面是两种可行的切法:



第一种切法,你最终只能拿到2个巧克力,而第二种可以得到3个。

输入

输入第一行是一个整数N,表示蛋糕的边长。接下来N行,每行N个字符(“#”或”.”)描述蛋糕的情况。

输出

输出第一行输出一个整数M表示你最大可以获得巧克力的个数。

接下来输出两个整数R和C,描述切割方法,R表示水平切线是介于第R行和R+1行之间,C表示垂直切线介于第C列和第C+1列之间。

如果有多种切法,输出任意一种即可。

样例输入

8

..#..#..

.##..#..

......#.

.##.....

..#.#...

......#.

........

..#..#..

样例输出

3

3 4

题目大意

给你一个矩阵表示一块蛋糕,上面有一些巧克力,现在让你横竖各一刀切成四块

问四块中最小巧克力块数最大值和切法

总结 & 题解

这道题正常发挥:

用时也很正常

主要难点:矩阵前缀和

设 \(sum_{i,j}\) 表示以 (1,1) 为左上角,以 (i,j) 为右下角的巧克力总块数

先列出式子:\(Sum_{i,j}=Sum_{i,j-1}+Sum_{i-1,j}-Sum_{i-1,j-1}+map_{i,j}\)

解释

\(Sum_{i,j-1}\)


\(Sum_{i-1,j}\)


\(Sum_{i-1,j-1}\)

这就相当于一个容斥原理

然后直接暴力枚举切的行和切的列,分别求出四块的块数并取 min ,并和答案比较,最后输出

T3 游戏

题面

描述

玩家1和玩家2在\(N*N\)的棋盘玩游戏,一开始皇后被放置在棋盘上的某个位置,两人轮流移动,玩家1先移。

每次移动玩家可以把皇后向左边移动若干步,或者向下面移动若干步,或者沿着左下方的斜线移动若干步。

如下图,“X”表示皇后”Q”一次移动可以移到的位置。



游戏将会以皇后到达左下角而告终。谁把皇后移到左下角就获胜。例如下图:



玩家2将获得比赛的胜利。

告诉你皇后一开始的位置。你的任务是计算出最后谁将赢得比赛的胜利,假设两个玩家都是聪明绝顶每次移动都会采用最优策略。

输入

输入包含多组测试数据(<10组)。

对于每组测试数据,输入包含两行,第一行包含一个整数N,描述棋盘的大小,

第二行输入两个整数I,J,其中I表示开始皇后所在列(丛左数起),J表示行(从上数起)。

输出

对于每组输入数据,输出1或2,表示是哪个玩家赢得比赛的胜利。

样例输入

500

331 297

500

127 423

500

117 429

500

124 424

样例输出

1

1

1

2

总结 & 题解

我也想到找规律,但是过于肤浅,遇到这种题应该深入探究。

转载于

这个题其实是有规律的

规律:

(如果一个位置0则从该点出发后手必胜)

(如果一个位置1则从该点出发先手必胜)

0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1

1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

从这张图可以看出:

0具有对称性。

比如:(2,3)是0,(3,2)也是0

然后,我们把0的位置挑出来:

1 1

2 3

3 2

4 6

5 8

6 4

7 11

8 5

9 14

10 16

11 7

12 19

13 21

14 9

15 24

16 10

17 27

18 29

19 12

21 13

24 15

27 17

29 18

好像看起来没什么规律,但是先去个重:

1 1

2 3

4 6

5 8

7 11

9 14

10 16

12 19

13 21

15 24

17 27

18 29

我们可以发现这样的规律:

1 1——差值是0

2 3——差值是1

4 6——差值是2

5 8——差值是3

7 11——差值是4

9 14——差值是5

10 16——差值是6

12 19——差值是7

13 21——差值是8

15 24——差值是9

17 27——差值是10

18 29——差值是11

不难看出,差值是递增的,每个数刚好出现一次

每次求这样一对数时:

第一个数是之前没出现过的数的最小的那个

第二个数是第一个数+差值

然后判断输入的x和y是否出现在这些数对中。

证明

有一个棋盘



我们假设标为 1 是先手胜,标上 2 是后手胜



我们发现有两个凹进去的地方,自然都是 2

那么所有能到 2 的都是 1,以此类推

那为什么一个数只能出现一次呢?



很明显横着和竖着都被覆盖了

那为什么差值是递增的呢?



图中标黄色的 1 ,把差值为 1 的覆盖了,差值只能为 2,下一次差值为 2 的又被覆盖了,差值只能为 3,以此类推

T4 最大利润

题面

描述

政府邀请了你在火车站开饭店,但不允许同时在两个相连接的火车站开。任意两个火车站有且只有一条路径,每个火车站最多有50个和它相连接的火车站。

告诉你每个火车站的利润,问你可以获得的最大利润为多少。

例如下图是火车站网络:



最佳投资方案是在1,2,5,6这4个火车站开饭店可以获得利润为90

输入

第一行输入整数N(<=100000),表示有N个火车站,分别用1,2。。。,N来编号。

接下来N行,每行一个整数表示每个站点的利润,接下来N-1行描述火车站网络,每行两个整数,表示相连接的两个站点。

输出

输出一个整数表示可以获得的最大利润。

样例输入

6

10

20

25

40

30

30

4 5

1 3

3 4

2 3

6 4

样例输出

90

题目大意

在一棵树上选点,会得到它的权值,单选了这个点就不能选它的儿子,问最大权值

总结 & 题解

双向建边开了一倍空间,70分飞了,应该细心检查。

应得:

实际:

树形 DP 模板题,和“没有上司的晚会”双倍经验。

完结

  1. 比赛时要学会打对拍数据,检验程序。(T1)
  2. 比赛前要有规划,这点做得还行(T2)
  3. 当别的题都做完了可以深入研究规律题,不要太肤浅(T3)
  4. 所有题都做完了要检查明显的错误如数组大小、输入输出格式(T4)


The End

2020.09.12【NOIP提高组&普及组】模拟赛C组 总结的更多相关文章

  1. 2018.12.30【NOIP提高组】模拟赛C组总结

    2018.12.30[NOIP提高组]模拟赛C组总结 今天成功回归开始做比赛 感觉十分良(zhōng)好(chà). 统计数字(count.pas/c/cpp) 字符串的展开(expand.pas/c ...

  2. 2017.1.16【初中部 】普及组模拟赛C组总结

    2017.1.16[初中部 ]普及组模拟赛C组 这次总结我赶时间,不写这么详细了. 话说这次比赛,我虽然翻了个大车,但一天之内AK,我感到很高兴 比赛 0+15+0+100=115 改题 AK 一.c ...

  3. 使用镜像安装cygwin、gcc并配置CLion IDE -2020.09.12

    使用镜像安装cygwin.gcc并配置CLion IDE -2020.09.12 Cygwin 官网:http://www.cygwin.com/ 下载64bit安装器,并打开选择next 尽量不要装 ...

  4. Java实现 第十一届 蓝桥杯 (高职专科组)省内模拟赛

    有错误的或者有问题的欢迎评论 十六进制数1949对应的十进制数 19000互质的数的个数 70044与113148的最大公约数 第十层的二叉树 洁净数 递增序列 最大的元素距离 元音字母辅音字母的数量 ...

  5. Java实现 第十一届 蓝桥杯 (本科组)省内模拟赛

    有错误的或者有问题的欢迎评论 计算机存储中有多少字节 合法括号序列 无向连通图最少包含多少条边 字母重新排列 凯撒密码加密 反倍数 正整数的摆动序列 螺旋矩阵 小明植树 户户通电 计算机存储中有多少字 ...

  6. 2020.09.05【NOIP提高组&普及组】模拟赛C组1总结

    T1:机器翻译 这一道题是一个很简单的队列题目,我们只要每次维护队列元素数量保持在m以内即可 T2:乌龟棋 这一道题我一开始比赛是暴力枚举(万事先暴力),很明显这个肯定会超时(30分)那么考虑动态规划 ...

  7. 纪中集训2020.02.09【NOIP提高组】模拟B 组总结反思

    目录 JZOJ.1747[NOIP2014模拟11.5]无穷迷宫 比赛时 之后 总结 JZOJ1478.[NOIP2014模拟11.5]近似乘积 比赛时 之后 总结 JZOJ3926. [NOIP20 ...

  8. 2017.07.09【NOIP提高组】模拟赛B组

    Summary 今天放假,比赛于是就没有打了,但是看了一下题,发现都挺简单了,不想码~╮(╯▽╰)╭懒虫一条.最后一题居然做过原题.这次比赛让我对并查集“刮目相看”,对贪心感到“前途无量”,觉得树形D ...

  9. 2017.07.06【NOIP提高组】模拟赛B组

    Summary 今天比赛感觉题目很奇葩,都可以用许多简单方法来做,正确性都显然,当然也有点水,也就是说是考我们的数感和数学知识,而程序,只是代码的体现. 这次的时间安排感觉不错,因为很快就打完最后一道 ...

随机推荐

  1. MySQL外键约束On Delete和On Update的使用

    On Delete和On Update都有Restrict,No Action, Cascade,Set Null属性.现在分别对他们的属性含义做个解释. ON DELETE restrict(约束) ...

  2. 将base64转成File文件对象

    function dataURLtoFile(dataurl, filename) { //将base64转换为文件        var arr = dataurl.split(','),      ...

  3. 动态代理-JDK

    代理模式:假设一个场景,你的公司是一位软件公司,你是一位软件工程师,显然客户带着需求不会去找你谈,而是去找商务谈,此时商务就代表公司. 商务的作用:商务可以谈判:也有可能在开发软件之前就谈失败,此时商 ...

  4. python常见内置函数

    一. map( ) 映射 l = [1,2,3,4] print(list(map(lambda x:x+1,l))) # 获取列表中每个元素并传递给匿名函数运算保存返回值 二. zip( ) 拉链 ...

  5. 基于STM32单片机的简单红外循迹的实现

    初步接触STM32,采用两路红外传感器实现小车循迹,稍显简略,如有不好的地方,欢迎大家指点改正

  6. Java和JavaScript(函数)参数传递是按值传递还是按引用传递?

    结论:Java和JavaScript的所有(函数)参数传递都是按值传递! 1.什么是函数参数的传递是按引用传递? 什么是引用?这个概念多见于C++中,在C++中,引用解释为变量的别名. 1 #incl ...

  7. Java-NIO之Channel(通道)

    1:Channel是什么 通道表示与实体的开放连接,例如硬件设备.文件.网络套接字或能够执行一个或多个不同 I/O 操作(例如读取或写入)的程序组件. 1.1:Channel与Stream的对比 St ...

  8. Python学习阵痛期

    Python和之前学习的Java语法上有较大的区别,例如Java中for循环常使用++自增符,在Python中是没有++的. 因为Python中整型.字符型等都是不可变的,一改变值就重新分配了新的内存 ...

  9. Ajax错误处理

    控制台报的错误是: Access to XMLHttpRequest at 'http://localhost:3000/error' from origin 'null' has been bloc ...

  10. 使用pip管理库

    2.5 使用pip管理库 安装Python后会默认安装pip工具,该工具可以用来安装.升级和移除库.默认情况下 pip 将从[Python Package Index]https://pypi.org ...