浅谈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,说不定有惊喜。
最后就是把文件记得备份,以免丢失。
浅谈OI中的提交答案的更多相关文章
- [技术]浅谈OI中矩阵快速幂的用法
前言 矩阵是高等代数学中的常见工具,也常见于统计分析等应用数学学科中,矩阵的运算是数值分析领域的重要问题. 基本介绍 (该部分为入门向,非入门选手可以跳过) 由 m行n列元素排列成的矩形阵列.矩阵里的 ...
- 浅谈OI中的底层优化!
众所周知,OI中其实就是算法竞赛,所以时间复杂度非常重要,一个是否优秀的算法或许就决定了人生,而在大多数情况下,我们想出的算法或许并不那么尽如人意,所以这时候就需要一中神奇的的东西,就是底层优化: 其 ...
- 浅谈Java中的对象和引用
浅谈Java中的对象和对象引用 在Java中,有一组名词经常一起出现,它们就是“对象和对象引用”,很多朋友在初学Java的时候可能经常会混淆这2个概念,觉得它们是一回事,事实上则不然.今天我们就来一起 ...
- 浅谈C中的malloc和free
转自http://bbs.bccn.net/thread-82212-1-1.html非常感谢作者 浅谈C中的malloc和free 在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的 ...
- 浅谈JS中的闭包
浅谈JS中的闭包 在介绍闭包之前,我先介绍点JS的基础知识,下面的基础知识会充分的帮助你理解闭包.那么接下来先看下变量的作用域. 变量的作用域 变量共有两种,一种为全局变量,一种为局部变量.那么全局变 ...
- 浅谈.net中数据库操作事务
.net中的事务 关键几点 概念:1:什么是事务 2:什么时候用事务 3:基本的语法 (1): 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit).事务通常 ...
- 浅谈HTTP中GET、POST用法以及它们的区别
浅谈HTTP中GET.POST用法以及它们的区别 HTTP定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE.URL全称是资源描述符.我们可以这样认为: 一 ...
- 浅谈HTTP中GET和POST请求方式的区别
浅谈HTTP中GET和POST请求的区别 HTTP认知: HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议.HTTP的底层是TCP/IP.所以GET和POST的底层也是TCP/IP,也 ...
- 浅谈Java中的对象和对象引用
浅谈Java中的对象和对象引用 在Java中,有一组名词经常一起出现,它们就是“对象和对象引用”,很多朋友在初学Java的时候可能经常会混淆这2个概念,觉得它们是一回事,事实上则不然.今天我们就来一起 ...
随机推荐
- Linux系统文件权限体系详解
准备工作:先简单了解Linux文件权限 在Linux系统中,ls -l 命令可以查看文件的权限,如 [zhaohuizhen@localhost Test]$ ls -l a -rw-rw-r--. ...
- Intersecting Lines (计算几何基础+判断两直线的位置关系)
题目链接:http://poj.org/problem?id=1269 题面: Description We all know that a pair of distinct points on a ...
- 高精度模板_C++
高精度压位,压9位 read:读入 write:输出 copy:赋值 change:交换 empty:清0 cmp:比较大小,相当于小于号 plus:加法 dec:减法 multy:乘法 除法实在不会 ...
- It is possible that this issue is resolved by uninstalling an existi
使用真机连接Android Studio测试时出现这样的错误: 解决方法: 设置Android Studio 中Instant Run中的选项为不选中 根据以下路径,找到Instant Run中的选项 ...
- [c++,bson] linux 使用 BSON 编程[www]
[c++,bson] linux 使用 BSON 编程 http://blog.chinaunix.net/uid-28595538-id-4987410.html 1.js db=db.getSib ...
- mongodb-linux-x86_64
卷 DataDisk 的文件夹 PATH 列表卷序列号为 4A8E-D95CD:.│ 1.txt│ GNU-AGPL-3.0│ MPL-2│ README│ THIRD-PARTY-NOTI ...
- C高级 框架开发中红黑树结构
引言 -- 红黑树历史 红黑树是数据结构学习中一道卡. 底层库容器中必不可少的算法. 历经各种实战运用,性能有保障. 同样红黑树不好理解, 就算理解了, 代码也不好写. 就算写了, 工程库也难构建. ...
- centos7.4通过yum安装mysql
安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...
- leetcode 之Plus One(9)
这题需要注意的是最后的进位 vector<int> plusOne(vector<int>& nums,int num) { add(nums, num); } voi ...
- ZK客户端
说明:本文为读<从Paxos到Zookeeper 分布式一致性原理与实践>读书笔记 shell操作 Java客户端 原始API pom文件: <dependency> < ...