2016.10.7初中部上午NOIP普及组比赛总结
2016.10.7初中部上午NOIP普及组比赛总结
这次的题还可以,重新入了比赛的前十。
进度:
比赛:90+10+70+30=200
改题:AC+AC+AC+AC=AK
找试场
这题很简单,但是被欺负了十分。
题目简化:
一个人在(0,0),然后盲目听信别人的意见,
顺着某些方向走啊走啊。
问最后的坐标。
比赛思路:
方向数组就不用说了吧……
有一个东西专门标记方向。
用字符串读入,如果是字母,则标记方向的要变。
如果是数字,则改变坐标,输出。
然后就没什么了。
(其实这题的难点没有什么,我只强调一个,y轴朝上!)
错因:
有一个非常非常奇怪的数据,
那个人只会转身而不走。
正解:
同上,记得判断只转弯的情况,输出(0,0)。
圆的国度
这题,一开始好多人觉得这题是最难的,
可在XYW讲过之后,瞬间感觉智商被侮辱。
题目简化:
一个人,要从A到B,每经过一个圆他就会
没了50%的命。所以他想知道最少穿过多少圆(可以绕道)。
圆不会手拉手。
比赛思路:
匆匆地打了个表。10分。
正解:
因为两个圆不能连在一起,
所以它也不能手拉手围着你。
并且你是零维的,所以不管两个圆围着有多密,
只要它们不拉手,就能穿过去。
有四种情况:
1. 只围A不围B,那么ans++
2. 只为B不围A,同上。
3. 两个都圈,忽略。
4. 都不围,忽略。
枚举每个点,
用勾股定理计算A或B与那个点的长度,
然后两个都比较,中间用xor(相反为true,相同为false)连接。
为true就加一吧。
幂运算
快结束时就在赶这道题,在某些细节错了,
因此70。
题目简化:
输出A^B
而且精度要够,不能用科学计数法。
还有一个特别可恶的:如果结果是0.x的形式,
要把0去掉。
比赛思路:
小数的高精度嘛……
把它变成整数*10^n(n是负数哟)的形式。
把前面的高精度乘法,最后给它加小数点。
注意小数点位置!
错因:
小数点位置错了……
正解:
同上,判断好小数点位置就好了。
箱子嵌套
我什么都不想说……
题目简化:
有几个n维箱子,要让它们一个装着一个,
这个又装着一个……问能做这种操作最多用多少个箱子。
比赛思路:
贪心,先把每个箱子里的维度以大到小排个序,
然后又让箱子直间再排个序(长为第一关键字,宽为第二关键字,高第三……)
然后就一个循环把能放的加起来,输出。
后来,我改了一下,排序部分不变,
然后就爆搜……(能时超50分哟!)
我又加了一个小小的记忆化。
设bz[i]为用了i个箱子时最里面的箱子最大(不是体积)的每个维度的长度。
为什么说是个“小小”的记忆化呢?因为那其实没什么大用处,多了10分。
错因:
答案错误30分。证明了这种方法不!可!行!
正解:
我记得箱子里面的维度排序不用变。
然后要DP!
听别人说是最长不下降序列改一下……
再讲讲我的方法:
仍然是一个厚颜无耻的爆搜。
把记忆化改一改。
因为上面所说的那个只是一个小小的记忆化,
并没有多大的用处。
我本打算定义bz[cd(为一个n为体的各条边的长度)]
为到最里面的为i(假设是cd类型)时的最大能嵌套的个数。
但是前面我打的是type cd:array[1..10]of longint;
题目说了每个维度在longint范围内(负数肯定没有)。
这样的话则是有(2^32)^10的空间,而且还是4KB的longint!
编译时都能显示错误!!!
所以我之前就把它反过来,所以没多大用处。
但我后来发现:
box数组中的东西排完序后就再也不会变了,
也不会凭空产生一个盒子来。
所以bz的下标只需要是序号就够了(奇妙地解决了空间问题)。
然后就简单了,如果还是不比之前的大,就直接能退出了。
这样可以去掉很多不必要的运算,使得程序加快。
题外话:
1. 初赛快到了,我得要专门训练一下初赛的题型,太难了。
2. 多次翻车终于有一次回到前十,还不错的。
2016.10.7初中部上午NOIP普及组比赛总结的更多相关文章
- 2016.10.6初中部上午NOIP普及组比赛总结
2016.10.6初中部上午NOIP普及组比赛总结 中了病毒--病毒--病毒-- 进度: 比赛:AC+0+0+20=120 改题:AC+0+AC+20=220 Stairs 好--简--单!递推就过了 ...
- 2016.10.5初中部上午NOIP普及组比赛总结
2016.10.5初中部上午NOIP普及组比赛总结 这次的题目出得挺有质量的.但我觉得我更应该努力了. 进度: 比赛:0+20+0+0=20 改题:AC+AC+AC+AC=AK kk的作业 这题我错得 ...
- 2016.10.29初中部上午NOIP普及组比赛总结
2016.10.29[初中部 NOIP普及组 ]模拟赛 做得好爽! 进度: 比赛:35+45+AC+0=180 改题:AC+AC+AC+0=300 幸运的数 有点无语--之前怕超限,还特意利用程序打了 ...
- 2016.11.5初中部上午NOIP普及组比赛总结
2016.10.29初中部上午NOIP普及组 这次比赛算是考的最差的一次之一了,当中有四分之三是DP. 进度: 比赛:没分+0+没分+40=40 改题:AC+0+没分+40=140 TurnOffLi ...
- 2016.10.4初中部下午NOIP普及组比赛总结
2016.10.4初中部下午NOIP普及组比赛总结 这次的题有些水,只是第四题有点坑. 题目: 比赛:AC+0+AC+50=250 改题:AC+AC+AC+50=350 一.Bill 满地都是水 题目 ...
- 2016.9.15初中部上午NOIP普及组比赛总结
2016.9.15初中部上午NOIP普及组比赛总结 2016.09.15[初中部 NOIP普及组 ]模拟赛 又翻车了!表示时超和空超很可恨! 进度 比赛:AC+0+0+20=120 改题:AC+80+ ...
- 2016.9.3初中部上午NOIP普及组比赛总结
2016.9.3初中部上午NOIP普及组比赛总结 链接:https://jzoj.net/junior/#contest/home/1339 这次真爽,拿了个第四!(我还被班主任叫过去1小时呢!) 进 ...
- 2016.9.24初中部上午NOIP普及组比赛总结
2016.9.24初中部上午NOIP普及组比赛总结 2016.09.24[初中部 NOIP普及组 ]模拟赛 其实这次我没比赛,早上去参加亲子活动去了. 不过在下午我做完了所有的题,感觉还好. 进度 现 ...
- 2016.9.10初中部上午NOIP普及组比赛总结
2016.9.10初中部上午NOIP普及组比赛总结 链接:https://jzoj.net/junior/#contest/home/1340 好不爽!翻车了!不过排名差不多在中间偏上一点, 还好不是 ...
随机推荐
- struts漏洞处理--老项目struts版本升级遇到的问题
struts漏洞S2-016被扫描出,要求升级struts版本,查看生产struts版本2.0.12,该漏洞影响版本2.3.15以下,上网搜索,struts2.5以上的要求jdk1.7,由于项目过老, ...
- 1、linux常用命令的英文单词缩写
1.linux常用命令的英文单词缩写 命令缩写: ls:list(列出目录内容) cd:Change Directory(改变目录) su:switch user 切换用户 rpm:redhat pa ...
- <爬虫实战>糗事百科
1.糗事百科段子.py # 目标:爬取糗事百科段子信息(文字) # 信息包括:作者头像,作者名字,作者等级,段子内容,好笑数目,评论数目 # 解析用学过的几种方法都实验一下①正则表达式.②Beauti ...
- 21-Ubuntu-文件和目录命令-复制文件和目录-cp
cp 将给出的文件或目录复制到另一个文件或目录,相当于DOS下的copy命令 选项 含义 -f 已经存在的目标文件直接覆盖,不提示 -i 覆盖文件前提示 -r 若给出的源文件是目录文件,则cp将递归复 ...
- USACO2007 捕牛记 /// queue+桶 oj1503
题目大意: John和牛都站在一条直线上,开始时John位于坐标点N上( 0 ≤ N ≤ 100,000 ),牛位于坐标点K上( 0 ≤ K ≤ 100,000 ). John有两种行动方式:步行和瞬 ...
- json对象数组的创建、遍历、添加、删除、修改、js的splice()用法
本文链接:https://blog.csdn.net/houfengfei668/article/details/79843625 )第二种方式:手动构造json对象数组 )for )用splice方 ...
- 06.Mybatis关联查询
1.一对一关联查询 需求:查询出每条orders记录和其关联的user信息 在orders实体类中添加属性与set.get方法 /** * 测试1对1关联查询 */ private User user ...
- hadoop快照管理
快照相当于对目录做备份,并不会复制所有文件,而是记录文件的变化命令用法 ()hdfs dfsadmin -allowSnapshot 路径 (开启指定目录的快照功能) ()hdfs dfsadmin ...
- Oracle连接字符串总结
Oracle XE 标准连接 Oracle XE(或者"Oracle Database 10g Express Edition")是一个简单免费发布的版本. 以下是语法格式: Dr ...
- [JZOJ 5788] 餐馆
思路: 考虑树形dp. 我们设\(dp[i][j][0/1]\)表示在\(i\)为根的子树中花费\(j\)单位时间,最终回到/不必回到\(i\)的最大收益. 转移三种: \(dp[x][j][0] = ...