浅谈OI中的提交答案
在OI中,题目有三类:
- 传统题
- 交互题
- 提交答案题
今天来了解一下第三类
概述
传统题:给你一个题面,你需要交一个程序,评测姬会用你的程序运行你看不到的一些测试点,用输出和正确答案比较
提交答案题:给你一个题面,把一堆输入也给你发下来,你通过各种玄学把输出算出来,再把输出交上去。
一般还会发一个checker来帮助你测试分数
有时还会把题目原来的游戏发下来供你颓废理解题意
为什么有这种题
我们可以猜想一下:
- 评测姬可能一时半会儿跑不出来
- 可能一个程序解决不了
- 可能要让你知道输入你才做得出来
特点
俗话说的好,常规题付出精力和分数的关系:
(网配,侵删,后同)
(忽略负数)
提交答案:
也就是说,如果你要得满分,不知道要到猴年马月去了。
所以提交答案一般是防AK的。
做法
人类智慧
俗称手玩,即手算,不解释。
优点:
- 可以准确地得到一个解
2.不用coding,节约时间
3.好玩
缺点:
1.大数据真没办法
2.可能得不到最优解
3.耗脑细胞
4.不稳定(雾)
建议在小数据使用(一般前几个)
暴力大法吼啊
直接上搜索
优点:
1.不用你干什么,让它自己跑,你可以想其他题/优化
2.准确性高,一般可以处理掉相当一部分点
缺点:
1.对于部分特(du)殊(liu)的数据点可能要跑很久(也许5个小时都跑不出来)
2.有时不好实现
为了检验你是不是写挂了,建议在暴力时得到一个解就立即输出,而不要等到搜索完。如果跑了5~10分钟还没有找到解的样子,结束继续跑下一个。
特殊点
把数据打开,也许会有惊人的发现。
优点:
你能想到的所有优点。
缺点:
你能想到的所有缺点(大雾)
瞎**乱搞
一般有:不顾一切地剪枝,莫名其妙地贪心
也就是说,如果你有一个类似的做法,但是你证不出来并怀疑是错的(一般都是错的),甚至你把自己hack了,但出错几率较小
优点:
1.速度快
2.比暴力好写
缺点:
1.不能保证得到最优解
2.风险大
建议在合法但不最优的解有分的题目中使用,并只给暴力没跑出来的算
魔改checker
一般checker是只给exe。如果给的是源码,并且你要实现的程序和checker有共同的功能,那你就中奖了。
优点:
1.妈妈再也不用担心暴力写错了
2.实现难度大大降低
缺点:
1.你需要时间去读懂checker
2.你还需要时间去熟悉checker的码风
还有,开始时跑一遍checker,说不定有惊喜。
最后就是把文件记得备份,以免丢失。
转载于:https://www.cnblogs.com/lstoi/p/9445479.html
浅谈OI中的提交答案相关推荐
- 浅谈数据分析中的“暗物质”
浅谈数据分析中的"暗物质" 我们分析数据,更重要的是看到数据中所隐藏的暗物质,即数据图中你看不见的数据\逻辑\知识. 开门见山,以下是某新闻媒体WAP\APP\PC三端的分周中和周 ...
- python文件路径拼接多出斜杠_浅谈python中拼接路径os.path.join斜杠的问题
浅谈python中拼接路径os.path.join斜杠的问题 调试程序的过程中,发现通过os.path.join拼接的路径出现了反斜杠 directory1='/opt/apps/upgradePac ...
- html代码id,浅谈html中id和name的区别实例代码
浅谈html中id和name的区别实例代码 更新时间:2008年07月28日 23:00:55 作者: 这个是form里面的name与id的区别 我们可以通过一段代码来分析一下其中的微妙差别: 在 ...
- 【网摘】 浅谈HTTP中GET与POST的区别
文章出处:http://www.cnblogs.com/hyddd/archive/2009/03/31/1426026.html 浅谈HTTP中Get与Post的区别 Http定义了与服务器交互的不 ...
- 浅谈java中的多态
浅谈java中的多态 学习了java一年的时间,这里对java的多态进行了一个总结,如有错误希望可以指出, 首先java的多态分为编译时的多态和运行时的多态,其中编译时的多态就是方法的重载(前期绑定) ...
- 浅谈JS中常见的问题(三)
往期文章目录 浅谈JS中常见的问题(一) 浅谈JS中常见的问题(二) JS知识总结 往期文章目录 前言 11. 同步和异步的区别 12. JS 判断变量类型的几种方法 13. 如何阻止事件冒泡与默认事 ...
- 浅谈Android中的MVP与动态代理的结合
浅谈Android中的MVP与动态代理的结合 本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 在Android开发平台上接触MVP足足算起来大概已经有一个年头左右.从最开始到现在经 ...
- 浅谈BufferedReader中的read()方法和readLine()方法
浅谈BufferedReader中的read方法和readLine方法 前言:本人比较菜啦,如果有错误,还请大佬指正. 1. read方法 查看API文档我们可以发现BufferedReader类中的 ...
- html 取消只读属性,浅谈html中input只读属性readonly和disable的区别
Readonly和Disabled它们都能够做到使用户不能够更改表单域中的内容.但是它们之间有着微小的差别,总结如下: Readonly只针对input(text / password)和textar ...
最新文章
- CSS之定位(绝对定位元素的布局)
- 读《c#与算法--快速排序》随笔
- curl 使用 ~/.netrc
- Spring Cloud Alibaba - 26 Gateway-自定义谓词工厂RoutePredicateFactory
- 从零点五开始用Unity做半个2D战棋小游戏(八)
- oracle 不包含某个单词,SQL SELECT WHERE字段包含单词
- linux允许所有用户执行文件夹,在Linux中,可以使用命令()针对文件newfiles.txt为所有用户添加执行权限。...
- 二十.激光、视觉和惯导LVIO-SLAM框架学习之相机内参标定
- 7 Managing Users and Securing the Database
- Lc123验证是不是回文序列
- 随机变量的原点矩、中心距、变异系数
- secure CRT 信号灯超时时间已到
- 北大青鸟汉字注释机内码_delphi取汉字的机内码、UniCode码
- 深海迷航坐标传送代码_深海迷航秘籍代码大全 美丽水世界秘籍代码教程
- 情怀java手机网游_Java开发游戏马里奥,就要码出我们这一代人的情怀
- Jenkins ERROR: Server rejected the 1 private key(s)
- 制作ZedBoard-linaro-desktop-ubuntu全过程之运行linaro系统
- 学习c语言,踏上新征程
- 05 linux shell脚本 变量的取用echo;变量的设置和修改;变量的使用规范以及示例
- 详解DBSCAN聚类