全国站

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

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

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

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

华中地区 | 河南 湖北 湖南

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

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

华南地区 | 广东 广西 海南

资    源
  • 资    源
当前位置:查字典高考网>高中频道>信息学联赛知识>信息学联赛知识: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】相关文章:

86所北京高校2007年具备高招资格

06年与07年高考化学考纲对比

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

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

2005年全国高中数学联赛考点诠释(二)

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

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

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

信息学联赛知识:贪心策略的特点与在信息学竞赛中的应用

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

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

网友关注

北大2008年新生奖学金最高达万 总额近千万

想突击提高孩子成绩 家长急请“高考保姆”

解读大学:“排行榜”就是“利益榜”

花12万就能参加北京高考?专家提醒不要上当

对外经济贸易大学2008年全日制本科招生章程

北京高中会考网报将结束 26日非在校公民可报考

中国人民大学2008年本科招生工作章程

哪些科目实行网上阅卷?答题需注意什么?

高考复读政策明年不调整 中招空中直播明天启动

北大文理科招生减少7人 职院面试可上大学

高考动向:北京考生外地求学优势多

专家提醒填报平行志愿切勿硬套往年分数线

内容趋向于社会问题 高考作文命题发展趋势

北京海淀“一模”成绩公布 505分可报重点大学

必看:2008年各校高考优惠招生政策盘点

北京高考一模结束 半数考生被数学拖后腿

中国科技大学08高招:只招收理科生

平行志愿使高考不再神秘 如何减少博弈风险性

北京的高考志愿填报方式对考生最为不利

不同学历层次就业率差距并不大

高考30天备战策略讲座征免费读者

北航招生办:2008年提档实行“少提不退”政策

北京石油化工学院确定2008年招生计划

北京语言大学08高招:部分专业50%出国率

北京外国语招生办负责人:不提供转专业机会

北京体大和首都体院在北京提前批招400余人

北京普通高等学校高招志愿5月12日首次填报

“高考答案”万元兜售 教育部门提醒别上当

北大08年计划在浙招78人 最高新生奖学金五万

报考指南:2012年哪些专业将“受宠”

网友关注视频

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

凤凰县高级中学高考试卷分析专题教研会

这!就是专业 第47集 江苏理工学院

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

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

高考帮:这!就是专业 第8集 安徽师范大学

武汉美术高考

视频|2019全国高考今日开考: 语文特级教师评析上海卷高考作文

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

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

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

高考同学看过来,难度系数三颗星的奥数1

这!就是专业 第20集 长沙理工大学—数据科学专业

一边扔试卷一边玩摇滚?这个学校的高考减压方式,真是帅到没朋友

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

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

小品:马云被宋小宝调侃当年数学高考考一分!

探秘历史 第二季 第479集 河南叛逆高考生,写下8000字批判作文,现状如何?

学渣男高考英语全写B,老师给老爸说成绩,老爸直接听懵了!

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

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

高级中学高考试卷分析专题教研会

衍声高考琴行2019高本硕学生暑假音乐会 张俊瀚《陕北民歌主题变奏曲》《阿根廷舞曲》第三乐章

你高考成绩高吗?这道题目怎能成立?高难度奥数,能不能把你难住

知道班里的高考成绩后,山东班主任气吐血了

葛军大爷怒了:高考我出了个小学数学送分题,你们跟我说不会做?

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

2019高考·语文试题有亮点 凸显时代主题 厚植家国情怀

2019高考数学第四题技巧秒出答案

高职高考数学公式