全国站

热门城市 | 全国 北京 上海 广东

华北地区 | 北京 天津 河北 山西 内蒙古

东北地区 | 辽宁 吉林 黑龙江

华东地区 | 上海 江苏 浙江 安徽 福建 江西 山东

华中地区 | 河南 湖北 湖南

西南地区 | 重庆 四川 贵州 云南 西藏

西北地区 | 陕西 甘肃 青海 宁夏 新疆

华南地区 | 广东 广西 海南

资    源
  • 资    源
当前位置:查字典高考网>高中频道>信息学联赛知识>信息学联赛知识:Complete Search

信息学联赛知识:Complete Search

来自:查字典高考网 2009-11-12

Complete Search

The Idea

Solving a problem using complete search is based on the ``Keep It Simple, Stupid'' principle. The goal of solving contest problems is to write programs that work in the time allowed, whether or not there is a faster algorithm.

Complete search exploits the brute force, straight-forward, try-them-all method of finding the answer. This method should almost always be the first algorithm/solution you consider. If this works within time and space constraints, then do it: it's easy to code and usually easy to debug. This means you'll have more time to work on all the hard problems, where brute force doesn't work quickly enough.

In the case of a problem with only fewer than a couple million possibilities, iterate through each one of them, and see if the answer works.

Careful, Careful

Sometimes, it's not obvious that you use this methodology.

Problem: Party Lamps [IOI 98]

You are given N lamps and four switches. The first switch toggles all lamps, the second the even lamps, the third the odd lamps, and last switch toggles lamps 1, 4, 7, 10, ... .

Given the number of lamps, N, the number of button presses made (up to 10,000), and the state of some of the lamps (e.g., lamp 7 is off), output all the possible states the lamps could be in.

Naively, for each button press, you have to try 4 possibilities, for a total of 410000 (about 106020 ), which means there's no way you could do complete search (this particular algorithm would exploit recursion).

Noticing that the order of the button presses does not matter gets this number down to about 100004 (about 1016 ), still too big to completely search (but certainly closer by a factor of over 106000 ).

However, pressing a button twice is the same as pressing the button no times, so all you really have to check is pressing each button either 0 or 1 times. That's only 24 = 16 possibilities, surely a number of iterations solvable within the time limit.

Problem 3: The Clocks [IOI 94]

A group of nine clocks inhabits a 3 x 3 grid; each is set to 12:00, 3:00, 6:00, or 9:00. Your goal is to manipulate them all to read 12:00. Unfortunately, the only way you can manipulate the clocks is by one of nine different types of move, each one of which rotates a certain subset of the clocks 90 degrees clockwise.

Find the shortest sequence of moves which returns all the clocks to 12:00.

The ``obvious'' thing to do is a recursive solution, which checks to see if there is a solution of 1 move, 2 moves, etc. until it finds a solution. This would take 9k time, where k is the number of moves. Since k might be fairly large, this is not going to run with reasonable time constraints.

Note that the order of the moves does not matter. This reduces the time down to k9 , which isn't enough of an improvement.

However, since doing each move 4 times is the same as doing it no times, you know that no move will be done more than 3 times. Thus, there are only 49 possibilities, which is only 262,072, which, given the rule of thumb for run-time of more than 10,000,000 operations in a second, should work in time. The brute-force solution, given this insight, is perfectly adequate.

Sample Problems

Milking Cows [USACO 1996 Competition Round]

Given a cow milking schedule (Farmer A milks from time 300 to time 1000, Farmer B from 700 to 1200, etc.), calculate

The longest time interval in which at least one cow was being milked

The longest time interval in which no cow is being milked

Perfect Cows Perfect Cow Cousins [USACO 1995 Final Round]

A perfect number is one in which the sum of the proper divisors add up to the number. For example, 28 = 1 + 2 + 4 + 7 + 14. A perfect pair is a pair of numbers such that the sum of the proper divisor of each one adds up to the other. There are, of course, longer perfect sets, such that the sum of the divisors of the first add up to the second, the second's divisors to the third, etc., until the sum of the last's proper divisors add up to the first number.

Each cow in Farmer John's ranch is assigned a serial number. from 1 to 32000. A perfect cow is one which has a perfect number as its serial. A group of cows is a set of perfect cow cousins if their serial numbers form a perfect set. Find all perfect cows and perfect cow cousins.

retrieved from http://ace.delos.com/usacogate

【信息学联赛知识:Complete Search】相关文章:

高中数学联赛培训讲义(一)

高中数学竞赛基本知识集锦(四)

信息学联赛知识:ISBN号码

信息学联赛知识:动态规划的状态表示(三)

“读、思、问”三者结合是攻克高中语文的最佳工具

东城区明年推出新举措 示范高中推荐生名额增加一倍

高中数学联赛培训讲义(二)

九成人赞同高考改革 近六成人认为需要动大手术

高考面试明日始 考生需带准考证和成绩单

信息学联赛知识:基本程序题集

[标签:竞赛联赛,数学联赛]

网友关注

南京农业大学2019年招生章程

2020年江西省高考报名时间公布

北京工业大学2019年本科招生章程

2020年安徽省高考报名条件

明年北京开始高考改革 复读是机会还是风险?

浙江大学2019年本科招生章程

北京:海军在京招飞10月28日初选

小学一年级班主任个人工作计划2019

2020年广东省普通高校招生统一考试报名工作规定:考生号编排规则

2020年安徽省高考报名方案

世界上面积最大的国家是什么

新高考选科适应性分析——双一流高校

2020年广东省普通高校招生统一考试报名工作规定:报考办法和程序

班主任工作计划模板2019

新中国成立70周年资讯学院组织师生观看阅兵大典直播

新中国成立70周年的作文素材:我的祖国我的家

2020年四川考生报名考试诚信承诺书

2020年广东考生高考报考办法和程序

班主任角色的六种意识的工作计划

2020年广东省普通高校招生统一考试报名工作规定:报名条件

2019年高考开考:10位盲人考生使用盲文试卷

2020年四川省高考报名条件

中国农业大学2019年全日制普通本科招生章程

2020年广东省普通高校招生统一考试报名时间和方式公布

四川:2020年查字典高考网上报名12日起 现场确认注意这些

2019年小学六年级班主任工作计划参考

2019浙江高考作文

东南大学2019年全日制普通本科生招生章程

2020年江西省查字典高考网上报名地点及安排

香港科技大学2020年内地本科招生正式启动

网友关注视频

乾坤已定,组合解读2019高考数学全国3卷理科18题,你是黑马吗?

广州早晨 2019 山西一高中班主任带学生骑行1800公里去上海

这四首励志歌曲,送给为梦起航的高考学子们,听完心潮澎湃!

这!就是专业 第43集 河北经贸大学—计算机科学与技术专业

张雪峰高考志愿填报指南 第28集 高考志愿分析,材料科学与工程专业,就业很一般,建议慎重选择

高中语文知识清单高考语文总複习工具书第5次修订五全綵版五三曲一线科学备考基础知识手册知识大集结资料书参考书导书高一高二高三

女儿高考作文只得5分,怎料妈妈一听作文题目,瞬间懂了

初二辍学,3次高考落榜,如今却成为最成功的音乐人之一

视频|上海高考作文: 寻找“中国味” 专家

男孩考上理想大学,却因为网瘾休学在家,高中班主任上门劝导

NBA流言收割机 第6集 神预测?高考数学试题暗示猛龙勇士4

这!就是专业 第31集 阜阳师范学院信息工程学院

沈阳音乐学院郎亦农教授的女高音高考曲目解析课程 第1集 沈阳音乐学院郎亦农为你讲解女高音高考曲目

2019全国高考志愿填报攻略 第50集 天津市高考历史三年本科录取排名

2019高考数学全国2卷理科第16题视频讲解及答案

北京新闻 2019 5.9万余北京考生今日高考 语文试题鼓励创造性阅读与表达

高中数学必修5 高考数列选填真题技巧秒杀讲解

他高考作文仅得6分,总分428分,被985高校录取,却被导师拒绝!

高考阅卷名师给考生的高考作文密训课 第5集 高考作文审题实操方法精讲(三)

高级中学高考试卷分析专题教研评比活动

体育生参加高考,太猛了,第一名是飞起来了吗?

2019年高考数学全国2卷理科第4题讲解及答案

张雪峰高考志愿填报指南 第47集 高考志愿,令人头疼的数学系,才是专业万金油,毕业后机会多

老马讲高考真题第九季2018年高考地理新课标一卷第37题

高考体育四项生的日常训练——深蹲移动跳:发展膝关节,踝关节力量。

沈阳音乐学院郎亦农教授的女高音高考曲目解析课程 第9集 《赛吾里麦》演唱讲解,音乐表现一定要自然流畅

最新高考数学全国2卷第12题视频解读

如何制作100万层的酥皮糕点?推算过程像数学高考题

招办面对面 第76集 阜阳师范学院信息工程学院

印度美术高考美术联考,考前培训班