ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>日韩欧美中文字幕精品,一区二区三区不卡在线视频,97国产成人精品视频 http://www.aygfsteel.com/LittleDS/If the only tool you have is a hammer, you tend to see every problem as a nail. zh-cn Wed, 11 Jun 2025 02:08:10 GMT Wed, 11 Jun 2025 02:08:10 GMT 60 USACO ¾lˆäºŽåšå®Œäº?/title><link>http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269990.html</link><dc:creator>æ¨ç£Š</dc:creator><author>æ¨ç£Š</author><pubDate>Mon, 11 May 2009 01:27:00 GMT</pubDate><guid>http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269990.html</guid><wfw:comment>http://www.aygfsteel.com/LittleDS/comments/269990.html</wfw:comment><comments>http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269990.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.aygfsteel.com/LittleDS/comments/commentRss/269990.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/LittleDS/services/trackbacks/269990.html</trackback:ping><description><![CDATA[用了(ji¨£n)å¤§æ¦‚ä¸€ä¸ªåŠæœˆçš„æ—‰™—´å§ï¼Œå½“ç„¶ä¸é—´æœ‰å¤§æ¦‚ä¸€ä¸ªç¤¼æ‹œç©ºç€æ¥ç€<br />
<br />
˜q™æ˜¯½W¬äºŒ‹Æ¡åšUSACOäº?ji¨£n),½W¬ä¸€‹Æ¡æ˜¯é«˜ä(sh¨´)¸çš„æ—¶å€™ï¼Œé‚£ä¸ªæ—¶å€™çš„题目跟现在的都ä¸å¤ªä¸€æ øP¼Œä¸»è¦æ˜¯é¡ºåºï¼Œè€Œä¸”那个时候是用PASCAL写的<br />
<br />
但是高ä(sh¨´)¸çš„æ—¶å€™æ²¡æœ‰åšå®Œï¼Œå¡åœ¨äº?ji¨£n)Section 5之å‰åQŒå…¶å®žæ˜¯å› 䨓(f¨´)很多东西ä¸ä¼š(x¨¬)åQŒæ•°å¦å…¶å®žä¹Ÿä¸å¤Ÿå¥½ï¼Œè‡³äºŽç†è§£çš„能力,ä¸çŸ¥é“çŽ°åœ¨æ˜¯ä¸æ˜¯ä¹Ÿæœ‰æ‰€æé«˜?sh¨´)?br />
<br />
其实˜q™æ¬¡åšçš„òq¶ä¸æ˜¯éžå¸”R¡ºåˆ©ï¼Œæˆ‘䏿˜¯ç‰›äººï¼Œä¸å¯èƒ½ä¸€å¤©æ‰«10å‡ é“题目那ç§åQŒç„¶åŽæ¯åˆ°é¢˜ç›®åŠä¸ªå°æ—¶å°±æžå®š<br />
<br />
å‰é¢3个Sectionçš„é¢˜ç›®è¿˜éƒ½ä¸½Ž—æ˜¯å¾ˆéš¾åQŒéƒ½æ˜¯è®¾lƒåž‹çš„ï¼Œéƒ½æ˜¯æ•™ä½ ½Ž—法怎么用,从Section 4开始就有比较难的题目了(ji¨£n)åQŒå°¤å…¶æ˜¯DP<br />
<br />
DP从高?sh¨´)¸å¼€å§‹æˆ‘ž®±æ²¡æœ‰æ„Ÿè§‰ï¼Œé‚£æ—¶å€™å°±æœ‰äh跟我è¯ß_(d¨¢)¼Œåªèƒ½å¤šåšé¢˜ç›®åQŒä¹Ÿè®¸æˆ‘现在åšçš„˜q˜ä(sh¨´)¸å¤Ÿå¤šå§ï¼Œæ€ÀL„Ÿè§‰DP是很有用很有用的东西åQŒæ‰€ä»¥ä¸€ç›´æƒ³å¦å¥½<br />
<br />
ä¸ç®¡æ€Žä¹ˆæ øP¼ŒUSACOæ€È®—是磕¼‚•碰¼„°çš„åšå®Œäº?ji¨£n),应该在NoCowå’ŒGoogle的帮助下¾lˆäºŽåšå®Œäº?br />
<br />
åŽé¢å¤§éƒ¨åˆ†é¢˜ç›®æˆ‘都看äº?ji¨£n)解题报告,有些½Ž—法惛_¾—出,但是ä¸çŸ¥é“该怎么应用到题目之ä¸?br />
<br />
现在å‘现˜q™ç‚¹æ‰æ˜¯æœ€é‡è¦çš„,½Ž—法模å—è°ä¸ä¼?x¨¬)写啊,都å¯ä»¥æå‰å†™å¥½ä¸€ä¸ªæ”¾åœ¨é‚£é‡Œï¼Œä½†æ˜¯é—®é¢˜æ˜¯æ€Žä¹ˆæŠŠè¿™ä¸ªç®—法应用到题目ä¸?br />
<br />
å¯èƒ½˜q™å°±æ˜¯æ‰€è°“的建模å§ï¼ŒæŠŠé¢˜ç›®å˜å½¢ä¸€ä¸‹ï¼Œç„¶åŽè·Ÿæˆ‘们已知的½Ž—法è”ç³»èµäh¥<br />
<br />
˜q˜æœ‰å¦å¤–一¿U情况,˜q™ä¸ªé¢˜ç›®çš„ç®—æ³•ä¸æ˜¯å·²çŸ¥çš„ä»ÖM½•½Ž—法åQŒè¦è‡ªå·±åŽÀLƒ³çš„,˜q™æ‰æ˜¯çœŸæ£è€ƒéªŒä¸€ä¸ªäh½Ž—æ³•ç´ å…»çš„æ—¶å€?br />
<br />
ž®±åƒTCO里é¢çš„题目,其实很多都是˜q™æ ·çš„,很少ä¼?x¨¬)ç»™ä½ ä¸€é“é¢˜ç›®è®©ä½ ç›´æŽ¥åŽ»å¥—ä¸€ä¸ªç®—æ³•çš„<br />
<br />
å¯èƒ½åŽŸæ¥æˆ‘在˜q™æ–¹é¢çš„ç†è§£ž®±æœ‰åå·®åQŒæˆ‘æ€»è®¤ä¸ºï¼Œä½ æŠŠæ‰€æœ‰çš„å¸¸è§½Ž—æ³•éƒ½ç»ƒç†Ÿäº†(ji¨£n)åQŒæ‰€æœ‰çš„题目都å¯ä»¥æ¨ªæ‰?br />
<br />
但是问题ž®±æ˜¯åQŒä½ 能ä¸èƒ½çœ‹å¾—出æ¥å“ªé“é¢˜ç›®ç”¨å“ªç§½Ž—æ³•<br />
<br />
而且åQŒå°±åƒDP˜q™ç§é¢˜ç›®åQŒå°±½Ž—ä½ çœ‹å‡ºæ¥äº†(ji¨£n)åQŒçжæ€è{¿UÀL–¹½E‹ä½ 也未必写的出æ?br />
<br />
æ€ÖM¹‹˜q˜æ˜¯å¦åˆ°äº?ji¨£n)很多,虽然¼‚•磕¼„°ç¢°åQŒä½†æ˜¯åšå®Œäº†(ji¨£n)100é“题˜q˜æ˜¯ä¼?x¨¬)有收获ç?br />
<br />
ä¸çŸ¥é“ä¸‹ä¸€ä¸ªç›®æ ‡æ˜¯ä»€ä¹ˆSGU呢,˜q˜æ˜¯TCO<br />
<br />
其实之所以喜‹Æ¢USACOçš„ä¸€ä¸ªåŽŸå› å°±æ˜¯ä»–ä¼?x¨¬)å‘Šè¯‰ä½ ‹¹‹è¯•æ•°æ®åQŒä½ å¯ä»¥å¾ˆæ–¹ä¾¿çš„Debug<br />
<br />
åƒOJ˜q™ç§åQŒä¸å‘Šè¯‰ä½ 测试数æ®çš„åQŒå¦‚æžœé‡åˆîCº†(ji¨£n)WAåQŒä½ ž®Þp¦æƒ³ç ´è„‘袋åŽÀLƒ³ä½ çš„½E‹åºå“ªé‡Œé”™äº†(ji¨£n)<br />
<br />
而往往一个äh自己看自å·Þqš„½E‹åºçš„æ—¶å€™ï¼Œæ˜¯å¾ˆéš‘֑现错误的åQŒè¿™ž®×ƒ¼š(x¨¬)让äh很éƒé—øP¼ŒçœŸçš„æ˜¯éžå¸”Rƒé—?br />
<br />
更何况,有些OJ真的是很è´Þqš„åQŒç”¨ä¸€äº›è¶…¾U§æ¶å¿?j¨©)çš„æ•°æ®æ¥é’»ä½ çš„½Iºåã€?br />
<br />
ä¸çŸ¥é“è¿™æ ·å¯¹ä¸å¯¹åQŒä¹Ÿè®¸æ˜¯è€ƒéªŒä½ çš„¾l†å¿ƒ(j¨©)½E‹åº¦å?br />
<br />
SGU or TCO 呢?<br />
<br />
<img src ="http://www.aygfsteel.com/LittleDS/aggbug/269990.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/LittleDS/" target="_blank">æ¨ç£Š</a> 2009-05-11 09:27 <a href="http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269990.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item><item><title>USACO Section 5回顾 http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269988.htmlæ¨ç£Š æ¨ç£Š Mon, 11 May 2009 01:16:00 GMT http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269988.html http://www.aygfsteel.com/LittleDS/comments/269988.html http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269988.html#Feedback 1 http://www.aygfsteel.com/LittleDS/comments/commentRss/269988.html http://www.aygfsteel.com/LittleDS/services/trackbacks/269988.html
TEXT
Convex Hulls
½H包
PROB Fencing the Cows
½H包问题åQŒç›´æŽ¥å¿½ç•¥ï¼Œå·®ä¸å¤šæ‰€æœ‰çš„è®¡ç®—å‡ ä½•æˆ‘éƒ½è·Œ™¿‡äº?/td>
PROB Starry Night
‘…çñ”éºÈƒ¦(ch¨³)题,用Flood Fill把所有的pattern全认出æ¥åQŒç„¶åŽåˆ¤æ–é‡å¤ï¼Œä¸é‡å¤å°±æ·ÕdŠ æ–°çš„
PROB Musical Themes
DP题,技巧在于如果两个åºåˆ—是themeåQŒé‚£ä¹ˆç›¸é‚?c¨¨)š„两个number差相½{?/td>
PROB Snail Trail
DFSåQŒæ²¡å•¥æŠ€å·?/td>
PROB Electric Fences
刚开始以为是Divide&ConqueråQŒåŽæ¥å‘现跟那é“题ä(sh¨´)¸ä¸€æ øP¼Œç›´æŽ¥æœçƒ¦(ch¨³)ž®±å¯ä»?/td>
PROB Wisconsin Squares
æœçƒ¦(ch¨³)题,Testcaseåªæœ‰sample那一¾l?/td>
TEXT
Heuristics & Approximate Searches
å¯å‘弿œç´¢ï¼Œæ²¡çœ‹
PROB Milk Measuring
䏀铿ˆ‘看Analysis看了(ji¨£n)两天的DPåQŒå…¶å®žè¿˜æ˜¯æ²¡æœ‰æ·±åˆÈ†è§?/td>
PROB Window Area
å¯ä»¥ç”¨çŸ©å½¢åˆ‡å‰²è¿‡
PROB Network of Schools
å¼ø™¿žé€šåˆ†é‡é¢˜
PROB Big Barn
æœ€å¤§åæ£æ–¹å½¢ï¼Œ½Ž€å•çš„DP
PROB All Latin Squares
æœçƒ¦(ch¨³)+剪æž
PROB Canada Tour
诡异的DP½Ž—法åQŒAnalysis的那个DP倒是˜q˜å¯ä»¥æŽ¥å—,ä¸è¿‡Nocow上的ä¼ég¹Žéœ€è¦è¯æ˜Žï¼Œä½†æ˜¯åˆæ²¡æœ?/td>
PROB Character Recognition
˜q™é“题目都能用DPåQŒä¸å¾—䏿„Ÿå¹DP的伟å¤?/td>
PROB Betsy's Tour
åˆæ˜¯æœçƒ¦(ch¨³)+剪æž
PROB TeleCowmunication
先把点è{化æˆè¾¹ï¼Œç„¶åŽæ±‚最ž®å‰²
PROB Picture
¼›ÀL•£åŒ?/td>
PROB Hidden Passwords
æœçƒ¦(ch¨³)+KMP优化
PROB Two Five
½Ž—是é“难题å§åQŒAnalysis都看äº?ji¨£n)好久,DPçœŸæ˜¯æ— æ‰€ä¸èƒ½
½W¬å…个Section的就ä¸å†™äº?ji¨£n),两个DP+一个牛å‰çš„ä½è¿½Ž?br />
那个Cow XOR我估计我˜q™è¾ˆå都ä¸ä¼š(x¨¬)忘记äº?ji¨£n)ã€?br />
]]> USACO Section 4回顾 http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269981.htmlæ¨ç£Š æ¨ç£Š Mon, 11 May 2009 00:52:00 GMT http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269981.html http://www.aygfsteel.com/LittleDS/comments/269981.html http://www.aygfsteel.com/LittleDS/archive/2009/05/11/269981.html#Feedback 0 http://www.aygfsteel.com/LittleDS/comments/commentRss/269981.html http://www.aygfsteel.com/LittleDS/services/trackbacks/269981.html
TEXT
Optimization Techniques
讲怎么剪æžçš?/td>
PROB Beef McNuggets
åˆçœ‹ä¸ŠåŽ»åƒæ˜¯ä¸€é“背包问题,但是用背包肯定超æ—Óž¼ŒåŽæ¥çœ‹äº†(ji¨£n)解题报告åQŒå‘çŽ°åŽŸæ¥æ˜¯æ•°å¦é¢?/td>
PROB Fence Rails
高维背包问题åQŒåªèƒ½æœç´?/td>
PROB Fence Loops
其实是很½Ž€å•çš„ä¸€é“æœ€çŸèµ\问题åQŒæ¶å¿?j¨©)å°±æ¶å¿?j¨©)在图的è{åŒ?/td>
PROB Cryptcowgraphy
éžå¸¸æ¶å¿ƒ(j¨©)çš„æœç´?剪æž
TEXT
"Network Flow" Algorithms
¾|‘络‹¹ï¼Œæˆ‘第一‹Æ¡ä¼š(x¨¬)写网¾lœæµž®±æ˜¯çœ‹äº†(ji¨£n)˜q™ä¸ª½Ž—法
PROB Drainage Ditches
¾|‘络‹¹ç»ƒä¹?f¨¤n)é¢?/td>
PROB The Perfect Stall
最大匹é…,匈牙利算æ³?/td>
PROB Job Processing
½W¬ä¸€é—®æ˜¯è´ªå¿ƒ(j¨©)åQŒç¬¬äºŒé—®åº”该也还是贪å¿?j¨©),ž®±æ˜¯æŠŠç¬¬ä¸€é—®æœ€å¿«åšå®Œçš„¾l™ç¬¬äºŒé—®æœ€æ…¢åšå®Œçš„
PROB Cowcycles
直接枚ä‹D的好åƒ?/td>
TEXT Big
Numbers
高精�/td>
PROB Buy Low, Buy Lower
¾lå…¸DPåQŒæœ€é•¿ä¸‹é™åºåˆ—ï¼Œå¯æ˜¯é—®é¢˜æ˜¯è¦æ±‚出çŽîCº†(ji¨£n)多少‹Æ¡ï¼ŒäºŽæ˜¯æˆ‘看äº?ji¨£n)解题报å?/td>
PROB The Primes
æœçƒ¦(ch¨³)+剪æžåQŒè¦æ³¨æ„æœçƒ¦(ch¨³)的顺åºï¼Œå…ˆæ˜¯½W¬äº”行第五列åQŒç„¶åŽå¯¹è§’线åQŒç„¶åŽå…¶ä»?/td>
PROB Street Race
关键路径åQŒåŽ»æŽ‰æ¯ä¸€ä¸ªèŠ‚ç‚¹ï¼Œç„¶åŽçœ‹çœ‹èµïL(f¨¥ng)‚¹ä¸Žç»ˆç‚ÒŽ(gu¨©)˜¯å¦è¿žé€šï¼Œä¸è”通总说明是关键节点
PROB Letter Game
æžšä‹DåQŒåˆ†ä¸¤å—åQŒå…ˆæ‰‘Ö®Œæ•´çš„å•è¯åQŒç„¶åŽæ‰¾pair
PROB Shuttle Puzzle
刚开始以为æœç´¢ï¼ŒåŽæ¥çœ‹äº†(ji¨£n)解题报告åQŒå‘çŽ°åŽŸæ¥æœ‰è§„律的,寒啊
PROB Pollutant Control
最ž®å‰²é—®é¢˜
PROB Frame Up
æœçƒ¦(ch¨³)é¢˜ï¼Œç”¨ä¸€å¼ è¡¨æ¥ç»´æŠ¤æ¯ä¸ªpattern的上下关¾p»ï¼Œå¯ä»¥å¤§é‡å‰ªæž
]]> USACO Section3回顾 http://www.aygfsteel.com/LittleDS/archive/2009/05/10/269942.htmlæ¨ç£Š æ¨ç£Š Sun, 10 May 2009 13:25:00 GMT http://www.aygfsteel.com/LittleDS/archive/2009/05/10/269942.html http://www.aygfsteel.com/LittleDS/comments/269942.html http://www.aygfsteel.com/LittleDS/archive/2009/05/10/269942.html#Feedback 0 http://www.aygfsteel.com/LittleDS/comments/commentRss/269942.html http://www.aygfsteel.com/LittleDS/services/trackbacks/269942.html
TEXT
Minimal Spanning Trees
最ž®ç”Ÿæˆæ ‘(w¨¨i)åQŒç»å…¸çš„½Ž—法
PROB Agri-Net
最ž®ç”Ÿæˆæ ‘(w¨¨i)åQŒUSACO˜q™ç‚¹æ¯”较好,一般讲完了(ji¨£n)一个算法,都会(x¨¬)å‡ÞZ¸€é“练ä¹?f¨¤n)é¢?/td>
PROB Score Inflation
背包问题
PROB Humble Numbers
¾l典题目åQŒç®—法是用已有的丑数乘ä(sh¨´)¸Šé›†åˆé‡Œé¢çš„ç´ æ•°åŽ»ç”Ÿæˆæ–°çš„丑数
PROB Shaping Regions
记得高ä(sh¨´)¸çš„æ—¶å€™åš˜q‡è¿™é“题目,当åˆç”¨çš„¼›ÀL•£åŒ–çš„æ–ÒŽ(gu¨©)³•åQŒä¸˜q‡çŽ°åœ¨USACOæ—‰™™æ”ÒŽ(gu¨©)ˆ1¿U’了(ji¨£n)åQŒé‚£ä¸ªæ–¹æ³•å¯èƒ½ä¸è¡Œäº†(ji¨£n)
PROB Contact
æžšä‹DåQŒè¾“出有点烦(ch¨³)
PROB Stamps
一个背包问题的å˜åÅž
TEXT Knapsack
Problems
怎么到现在æ‰ä»‹ç»èƒŒåŒ…问题啊,å‰é¢éƒ½æœ‰å¥½å‡ é“了(ji¨£n)
PROB Factorials
高精度å¯ä»¥åšåQŒä½†æ˜¯æˆ‘是去接ä¿ç•™äº†(ji¨£n)最åŽçš„6使•°åQŒä¸€ç›´åˆ°æœ€åŽã€‚注æ„åªä¿ç•™ä¸€ä½æ•°æ˜¯ä¸è¡Œçš„
PROB Stringsobits
直接生æˆçš?/td>
PROB Spinning Wheels
åˆæ˜¯ä¸€ä¸ªæˆ‘没看懂题的题目,然åŽçœ‹äº†(ji¨£n)æ ‡ç¨‹åQŒåŽŸæ¥ç›´æŽ¥æžšä¸‘Ö°±è¡Œäº†(ji¨£n)åQŒå¦‚æ¤ç®€å?/td>
PROB Feed Ratios
¾U¿æ€§ä»£æ•°é¢˜ç›®ï¼Œç›´æŽ¥æŠŠæ–¹½E‹è§£å‡ºæ¥ž®±å¥½äº?/td>
PROB Magic Squares
比较æ¶å¿ƒ(j¨©)çš„DFSåQŒä¸»è¦æ˜¯è½¬æ¢é‚£ä¸ªçжæ€è“væ¥æ¯”较麻çƒ?/td>
PROB Sweet Butter
最çŸèµ\的题目,枚ä‹Dæ¯ä¸€ä¸ªç‚¹ä½œäØ“(f¨´)集åˆç‚¹ï¼Œç„¶åŽæ±‚最çŸèµ\
TEXT
Eulerian Tours
‹Æ§æ‹‰å›žèµ\åQŒåˆæ˜¯ä¸€ä¸ªç»å…¸çš„½Ž—法
PROB Riding The Fences
‹Æ§æ‹‰å›žèµ\的题ç›?/td>
PROB Shopping Offers
DP问题åQŒçŠ¶æ€æ–¹½E‹åˆä¸æ˜¯æˆ‘自己想的,555ï½?/td>
PROB Camelot
è‘—å的亚瑟王问题åQŒæˆ‘是看äº?ji¨£n)解题报告æ‰åšå‡ºæ¥çš?/td>
PROB Home on the Range
DP问题åQŒæ‰¾æœ€å¤§åæ£æ–¹å½¢ï¼ŒåŽé¢˜q˜æœ‰ä¸€é“是找最大å矩åŞ的,隑ֺ¦å¤§äº†(ji¨£n)很多
PROB A Game
动æ€è§„划,好ä¸å®ÒŽ(gu¨©)˜“自己推出æ¥çš„状æ€è{¿UÀL–¹½E?/td>
TEXT
Computational Geometry
è®¡ç®—å‡ ä½•åQŒæ²¡çœ‹ï¼š(x¨¬)åQ?/td>
PROB Closed Fences
è®¡ç®—å‡ ä½•çš„é¢˜ç›®ï¼Œè·Œ™¿‡äº?/td>
PROB American Heritage
äºŒå‰æ ?w¨¨i)é历顺åºé¢˜ç›®ï¼Œå·²çŸ¥å‰åºä¸åºæ±‚åŽå?/td>
PROB Electric Fence
一个è„P代求最优值的题目åQŒå…¶å®žå°±æ˜¯ä¸æ–羃?y¨u)®èŒƒå›´çš„æžšä‹D
PROB Raucous Rockers
DPåQŒçŠ¶æ€æ–¹½E‹åˆæ˜¯çœ‹æ¥çš„åQŒä¼¼ä¹Žè¿™æ‰æ˜¯æ¯”较有难度的DPåQŒä¸åƒå‰é¢æœ‰äº›é¢˜åQŒçŠ¶æ€æ–¹½E‹ç®€ç›´æ˜¾è€Œæ˜“è§?/td>
]]> USACO Section 2回顾 http://www.aygfsteel.com/LittleDS/archive/2009/05/10/269923.htmlæ¨ç£Š æ¨ç£Š Sun, 10 May 2009 09:43:00 GMT http://www.aygfsteel.com/LittleDS/archive/2009/05/10/269923.html http://www.aygfsteel.com/LittleDS/comments/269923.html http://www.aygfsteel.com/LittleDS/archive/2009/05/10/269923.html#Feedback 0 http://www.aygfsteel.com/LittleDS/comments/commentRss/269923.html http://www.aygfsteel.com/LittleDS/services/trackbacks/269923.html
TEXT
Graph Theory
很有用的东西åQŒå¾è®®ä»”¾l†çœ‹çœ?/td>
TEXT
Flood Fill Algorithms
其实ž®±æ˜¯DFS
PROB The Castle
Flood
FillåQŒç›´æŽ¥ç”¨ä¸Šé¢é‚£ç¯‡æ–‡ç« 的算法就å¯ä»¥˜q?/td>
PROB Ordered Fractions
2‹Æ¡åó@环,求出所有的分数åQŒçº¦åˆ†ï¼ŒåŽÀLމé‡å¤çš„,排åº
PROB Sorting A Three-Valued Sequence
˜q™é¢˜æˆ‘是看的¾l“题报告åQŒå…¶å®žå°±æ˜¯åˆ†å—æ¥äº¤æ¢
åQŒé¦–先把所有的能一‹Æ¡äº¤æ¢å®Œæˆçš„å¤„ç†æŽ‰ï¼Œç„¶åŽå¤„ç†éœ€è¦ä¸¤‹Æ¡äº¤æ¢çš„
PROB Healthy Holsteins
忘记是贪å¿?j¨©)还是背包äº?ji¨£n)……-_-!
PROB Hamming Codes
直接枚ä‹Dçš?/td>
TEXT
Data Structures
è·Œ™¿‡
TEXT
Dynamic Programming
动æ€è§„划啦åQŒéžå¸¸æœ‰å¿…è¦å¥½å¥½çœ‹ï¼Œä¸è¿‡˜q™ç¯‡æ–‡ç« ä¹Ÿåªæ˜¯å¯¹äºŽåˆå¦è€…很有用
PROB Preface Numbering
¾|—马数å—问题åQŒæŠŠæ‰€æœ‰å¯èƒ½çš„¾l„åˆå…ˆç”Ÿæˆå‡ºæ¥ï¼Œ4åQ?˜q™ç§åQŒç„¶åŽå°±æ˜¯æ±‚最ž®è¡¨½Cºæ–¹æ³?/td>
PROB Subset Sums
背包问题åQŒè¿™é¢˜æˆ‘最开始居然没看出æ?#8230;…åQŒä»¥ä¸ºæ˜¯è¦æ·±æœçš„åQŒæ±—å•?/td>
PROB Runaround Numbers
直接模拟的,注æ„åˆ¤æ–æ˜¯å¦æ˜¯round
numberçš„æ¡ä»?/td>
PROB Party Lamps
我当åˆåªæ³¨æ„åˆîCº†(ji¨£n)æ¯ä¸ªæ“作åšä¸¤‹Æ¡å°±è·Ÿæ²¡åšä¸€æ øP¼Œæ‰€ä»¥ä¸€å…׃¹Ÿž®±æœ‰8¿Uæ“ä½œï¼ŒåŽæ¥çœ‹äº†(ji¨£n)解题报告åQŒå‘现其实åªè¦å¤„ç†å‰6个篞®±å¯ä»¥äº†(ji¨£n)
PROB The Longest Prefix
DPåQŒæˆ‘看得别äh的解题报告,没办法DP是我的弱™å?/td>
PROB Cow Pedigrees
DPåQŒè‡ªå·±æŽ¨äº?ji¨£n)一个差ä¸å¤šçš„çŠ¶æ€æ–¹½E‹ï¼Œå¯æƒœé”™äº†(ji¨£n)……
PROB Zero Sum
直接模拟åQŒæŠŠè¡¨è¾¾å¼ç”Ÿæˆå‡ºæ¥ï¼Œç„¶åŽè®¡ç®—¾l“æžœž®Þp¡Œ
PROB Money Systems
背包问题
PROB Controlling Companies
看了(ji¨£n)别äh的解题报告,˜q™é“题目用了(ji¨£n)一个å˜å½¢çš„Floyd½Ž—法åQŒå¾ˆå·§å¦™
TEXT
Shortest Paths
¾lå…¸½Ž—法å•?/td>
PROB The Tamworth Two
模拟å?/td>
PROB Overfencing
其实是比较æ¶å¿?j¨©)çš„ä¸€é¢˜ï¼Œå› äØ“(f¨´)è¦è{化那个图åQŒå‰©ä¸‹çš„ž®Þq®€å•了(ji¨£n)åQŒä»Žä¸¤ä¸ªexit开始BFSåQŒç„¶åŽæ‰¾æœ€å¤§å€?/td>
PROB Cow Tours
å…ˆF(tu¨¢n)loydåQŒæŠŠå›‘Öˆ’分æˆä¸¤å—åQŒç„¶åŽæžšä¸?/td>
PROB Bessie Come Home
直接Floydž®Þp¡Œ
PROB Fractions to Decimals
åˆ¤æ–æ—¶å€™åó@环的æ¡äšgž®±æ˜¯çœ‹ä½™æ•°æ˜¯å¦é‡å¤å‡ºçŽŽÍ¼Œå½“ç„¶åQŒåœ¨æˆ‘看äº?ji¨£n)Analysis之åŽåQŒå‘çŽîCº†(ji¨£n)æ›´åéy妙的办法
]]> Cow XOR (USACO) http://www.aygfsteel.com/LittleDS/archive/2009/05/10/269919.htmlæ¨ç£Š æ¨ç£Š Sun, 10 May 2009 09:20:00 GMT http://www.aygfsteel.com/LittleDS/archive/2009/05/10/269919.html http://www.aygfsteel.com/LittleDS/comments/269919.html http://www.aygfsteel.com/LittleDS/archive/2009/05/10/269919.html#Feedback 0 http://www.aygfsteel.com/LittleDS/comments/commentRss/269919.html http://www.aygfsteel.com/LittleDS/services/trackbacks/269919.html
ä¸çŸ¥é“䨓(f¨´)å•¥ï¼Œæ˜¯ä¸æ˜¯æ‰€æœ‰æžOIçš„äh在写题解的时候都喜欢ç”?#8220;æç¤º”的办法,ä¸ç›´æŽ¥æŠŠé—®é¢˜è¯´æ¸…楚,而是éšéš¾U¦çº¦çš„å…¬è¯‰ä½ è¯¥æ€Žä¹ˆåšï¼Œç„¶åŽä½ è®©ä½ è‡ªå·±åŽ»æƒŸë€?br />
äºŽæ˜¯å¯ÆD‡´æˆ‘到现在都没有弄明白˜q™é“题目是怎么回事åQŒå°½½Ž¡ä»–ä»¬çš„åšæ³•有N多ç§åQŒä½†æ˜¯å½’æ ¹åˆ°åº•éƒ½æ˜¯åœ¨æžä¸€ä¸ªå«åšå‰¾~€çš„东è¥Ñ€?br />
下题q™ä¸ªæ˜¯æˆ‘在TopCoderä¸Šé¢æ‰‘Öˆ°çš„一个牛人的解释åQŒç®—是英è¯å†™çš„æ¯”较好的,很通俗易懂çš?br />
上题q™ç¯‡æ–‡ç« 我想我就ä¸ç”¨å†ç¿»è¯‘了(ji¨£n)åQŒè¯´çš„æ¯”较清楚,但是他也没有¾l™å‡ºå…·ä½“的算法,ä¸è¿‡æ€èµ\å·²ç»å¾ˆæ¸…楚了(ji¨£n)
其实有了(ji¨£n)½W¬ä¸€æ¡æ€§è´¨ä¹‹åŽåQŒæœ€æœ´ç´ 的办法就是枚举iå’ŒjåQŒæ‰€ä»¥ä¸ª2‹Æ¡åó@环,但是˜q™æ ·æ˜„¡„¶æ˜¯è¦TLEçš?br />
在没有更好的½Ž—æ³•çš„å‰æä¸‹åQŒè¿™é“题目的½Ž—法ž®±æ˜¯½Iºé—´æ¢æ—¶é—ß_(d¨¢)¼Œåœ¨æˆ‘看楞®±æ˜¯˜q™æ ·çš„ã€?br />
在看äº?ji¨£n)N多代ç 之åŽï¼Œæˆ‘觉得还是USACOçš„Analysis的代ç 看上去比较¾ŸŽï¼Œä¸çŸ¥é“䨓(f¨´)啥,那些用Hashå’ŒTrie的我都没看懂åQŒå¯èƒ½æ˜¯æˆ‘比较èœå?br />
䏋颿ˆ‘å°è¯•ç€æŠŠUSACO的代ç 解释一下,看看能ä¸èƒ½è¯´æ¸…楚åQŒå¾ˆé—憾åQŒç”±äºŽè¿™é“题目的巨型的输入数æ®ï¼Œjava肯定是没办法˜q‡çš„
1 int main() {
2 freopen("cowxor.in", "r", stdin);
3 freopen("cowxor.out", "w", stdout);
4 scanf("%i", &n);
5 xr[0] = 0;
6 for (a = 0; a < n; a++ ) {
7 scanf("%d", &x);
8 xr[a+1] = xr[a] ^ x;
9 }
10 for (a = 0; a <= n; a++ ) {
11 prev[a][0] = a-1;
12 prev[a][1] = -1;
13 best[a] = a-1;
14 }
15 wyk = 22;
16 res = 0;
17 while (wyk--) {
18 for (a = 1; a <= n; a++ )
19 if (prev[a][0] == -1)
20 prev[a][1] = -1;
21 else {
22 if (xr[a] >> wyk != xr[prev[a][0]] >> wyk) {
23 tmp[0] = prev[prev[a][0]][1];
24 tmp[1] = prev[a][0];
25 } else {
26 tmp[0] = prev[a][0];
27 tmp[1] = prev[prev[a][0]][1];
28 }
29 prev[a][0] = tmp[0];
30 prev[a][1] = tmp[1];
31 }
32 fnd = false;
33 for (a = 1; a <= n; a++ )
34 if (0 <= best[a])
35 if ((xr[a] >> wyk) % 2 != (xr[best[a]] >> wyk) % 2 ||
36 0 <= prev[best[a]][1])
37 fnd = true;
38 if (fnd) {
39 res |= 1 << wyk;
40 for (a = 1; a <= n; a++ )
41 if (0 <= best[a] &&
42 (xr[a] >> wyk) % 2 == (xr[best[a]] >> wyk) % 2)
43 best[a] = prev[best[a]][1];
44 }
45 }
46 for (a = 0; best[a] == -1; a++ );
47 printf("%d %d %d"n", res, best[a]+1, a);
48 return 0;
49 }
首先åQ?ï½?行,½E‹åºæŠŠä»Ž1开始到iä½ç»“æŸçš„æ‰€æœ‰çš„xor都求出æ¥ä¿å˜åœ¨äº†(ji¨£n)数组xor里é¢åQŒæˆ‘惌™¿™ä¸ªå°±æ˜¯äØ“(f¨´)äº?ji¨£n)方便åŽé¢ç”¨åˆ°xor的那个性质ã€?br />
10ï½?4行是一ä¸?åˆå§‹åŒ–çš„˜q‡ç¨‹åQŒè¿™ä¸ªprev的定义应该å¯ä»¥ä»ŽUSACOçš„Analysis上é¢çœ‹åˆ°åQ?br />
xr[pop[q][0]]'s and xr[q]'s binary representations are the same on
positions e, e+1, etc., and pop[q][0] is biggest possible with 0 ≤
pop[q][0] < q. If there's no such pop[q][0] possible, then pop[q][0]
= -1.
xr[pop[q][1]]'s and xr[q]'s binary representations are the same on
positions e+2, e+2, etc., different on position e, and pop[q][1] is
biggest possible with 0 ≤ pop[q][1] < q. If there's no such
pop[q][1] possible, then pop[q][1] = -1.
æˆ‘ä»¬è¦æ ¹æ®åŽé¢çš„循环æ¥çœ‹˜q™ä¸ªprev数组的å«ä¹?br />
外侧的åó@环的作用是毋ơ处ç†ä¸€ä½ï¼Œç”׃ºŽé¢˜ç›®ä¸å·²¾l说明了(ji¨£n)åQŒæœ€å¤šåªæœ?1ä½ï¼Œæ‰€ä»¥åó@çŽ?1‹Æ¡å°±å¯ä»¥äº?ji¨£n)ã€?br />
我们æ¥çœ‹å†…ä¾§çš„åó@çŽ?br />
18ï½?1行,å¯ÒŽ(gu¨©)‰€æœ‰çš„奶牛¾~–å·å¾ªçޝ䏀é,得到的结果就是:(x¨¬)
对于当å‰çš„xor numberåQŒå¯¹äºŽè¿™ä¸ªxor numberçš„å‰21 - wykä½ï¼Œä¸Žä»–相åŒçš„那个xor number的佾|®ï¼Œòq¶ä¸”åQŒè¿™ä¸ªä½¾|®è¦ž®½é‡çš„é åŽã€?br />
如果没有相åŒçš„,那么˜q™ä¸ªä½ç½®ž®±æ˜¯-1
˜q™æ ·åQŒç»˜q‡æ¯‹Æ¡åó@环之åŽï¼Œprev里颞®±æ˜¯ä¸Žå½“å‰çš„xor numberå‰kä½ç›¸åŒçš„那个数的ä½ç½®åQŒä¸€‹Æ¡ä¸€‹Æ¡åó@环,直到最åŽã€?br />
prev[i][0]å˜çš„æ˜¯å½“current bit也相åŒçš„æ—¶å€™çš„ä½ç½®åQŒprev[i][1]å˜çš„æ˜¯currnet bitä¸ç›¸åŒæ—¶å€™çš„ä½ç½®åQŒäØ“(f¨´)什么覘q™æ ·å‘¢ï¼Ÿ
˜q™å¯èƒ½å°±éœ€è¦è§£é‡Šä¸€ä¸?br />
if (xr[a] >> wyk != xr[prev[a][0]] >> wyk) {
tmp[0] = prev[prev[a][0]][1];
tmp[1] = prev[a][0];
} else {
tmp[0] = prev[a][0];
tmp[1] = prev[prev[a][0]][1];
}
å¦‚æžœå½“å‰æ¯”较的这一ä½ç›¸½{‰ï¼Œé‚£ä¹ˆä¹Ÿå°±æ„味ç€prev[a][0]ä¸ç”¨å˜ï¼Œä½†æ˜¯prev[i][1]å´å¿…™åÕd˜åŒ–ï¼Œå› äØ“(f¨´)当å‰çš„这一ä½ï¼Œå·²ç»ä¸æ˜¯åˆšæ‰æ¯”较的那一ä½äº†(ji¨£n)åQŒprev[a][1]应该½{‰äºŽæ¤æ—¶çš„prev[a][0]çš„prev[a][1]åQŒæˆ‘惌™¿™ä¸ªåº”该ä¸éš„¡†è§£ã€?br />
å¦ä¸€æ–šw¢åQŒå¦‚æžœå½“å‰æ¯”较的˜q™ä¸€ä½ä¸ç›¸ç‰çš„æ—¶å€™ï¼Œé‚£ä¹ˆprev[a][1]ž®±åº”该ç‰äºŽprev[a][0]äº?ji¨£n)ï¼Œå› äØ?f¨´)之å‰çš„æ‰€æœ‰ä½éƒ½ç›¸½{‰ï¼Œä¹‹åŽå½“剘q™ä¸€ä½ä¸ç›?
½{‰ï¼Œ˜q™å°±æ˜¯prev[a][1]的定义。那么prev[a][0]的值呢åQŸæˆ‘ä»¬éœ€è¦æ³¨æ„的时候,当我们处ç†åˆ°a的时候,prev[a][0]ä½ç½®çš„倯D‚¯å®?
是已¾l处ç†è¿‡çš„了(ji¨£n)。那么prev[a][prev[a][0]][1]里é¢å˜çš„ž®±æ˜¯ä¸Žprev[a][0]在当å‰ä½ä¸ç›¸½{‰çš„那个xor
number的佾|®ï¼Œæ³¨æ„åQŒbitåªæœ‰0å’?åQŒprev[a][0]与当å‰çš„ä¸ç›¸½{‰ï¼Œè€Œprev[a][prev[a][0]][1]åˆä¸Žprev[a]
[0]ä¸ç›¸½{‰ï¼Œæ‰€ä»¥å½“å‰çš„prev[a][1]肯定与prev[a][prev[a][0]][1]是相½{‰çš„。这ž®±æ˜¯ tmp[0] =
prev[prev[a][0]][1];çš„å«ä¹‰ã€?br />
æˆ‘å†æ¥çœ‹32ï½?7行,首先è¦çŸ¥é“best[q]的定义:(x¨¬)
if X would be equal biggest possible xor, then xr[best[q]] xor xr[q]'s
in equal X's binary representation on positions e, e+1, etc., and
best[q] is biggest possible with 0 ≤ best[q] < q. If there's no such
best[q] possible, then best[q] = -1.
惌™¦å¾—到ž®½é‡å¤§çš„xoråQŒé‚£ä¹ˆå°±è¦å°½é‡è®©æ¯ä¸€ä½éƒ½ä¸ç›¸å?åQˆxr[a] >> wyk) % 2ž®±æ˜¯å–当å‰çš„二进制的最åŽä¸€ä½?br />
˜q™æ®µä»£ç 的作用就是找åQŒåˆ°å½“å‰ä½äØ“(f¨´)æ¢ï¼Œæ˜¯å¦æœ‰ä¸¤ä¸ªxor numberåQŒä»–们的æ¯ä¸€ä½éƒ½ä¸ç›¸åŒï¼Œ˜q™æ ·ž®Þpƒ½ä¿è¯å¼‚或¾l“果是最大的ã€?br />
接下æ¥çœ‹38ï½?5的这ŒDµä»£ç ï¼Œå› äØ“(f¨´)我们是从高ä(sh¨´)½åˆîC½Žä½æ¥å¤„ç†çš„,˜q™æ ·çš„è¯åQŒå¦‚果能ä¿è¯é«˜ä(sh¨´)½æ˜?åQŒé‚£ä¹ˆæ¯”ä½ æ‰€æœ‰çš„ä½Žä½éƒ½æ˜¯1都管用:(x¨¬)åQ?br />
于是åQŒæ—¢ç„¶æˆ‘们找åˆîCº†(ji¨£n)高ä(sh¨´)½æ˜?的情况,那么我们ž®Þp¦è®°å½•下结æž?res
ç„¶åŽåQŒå‰©ä¸‹çš„那个循环ž®±æ˜¯æ›´æ–°best[a]
在所有的xor
numberä¸ï¼Œå¦‚果当å‰ä½è·Ÿbest[a]的当å‰ä½æ˜¯ç›¸½{‰çš„åQŒé‚£ä¹ˆå°±æ›´æ–°best[a]åQŒå°†å…¶æ›´æ–îCØ“(f¨´)prev[best[a]][1]åQŒå°±æ˜¯é™¤äº?ji¨£n)当å‰ä½?
ä¸ç›¸½{‰ï¼Œå…¶ä½™ä½ä¸å˜çš„那个xor numberåQŒè¿™æ ·å°±ä¿è¯äº?ji¨£n)从高?sh¨´)½å¼€å§‹ï¼Œæ¯ä¸€ä½éƒ½èƒ½å¤Ÿž®½é‡å–到1åQŒå› 为åªè¦é«˜?sh¨´)½å°½é‡æ˜?åQŒæˆ‘们的¾l“æžœž®Þpƒ½ž®½é‡çš„大ã€?br />
其实prev˜q™ä¸ªæ•°ç»„里é¢çœŸæ£æœ‰ç”¨çš„æ˜¯prev[q][1]
ä¸çŸ¥é“我解释清楚äº?ji¨£n)没åQŒå…¶å®žè§£é‡Šäº†(ji¨£n)一é,自己也清楚了(ji¨£n)很多ã€?
]]> USACO Section 1回顾 http://www.aygfsteel.com/LittleDS/archive/2009/05/09/269757.htmlæ¨ç£Š æ¨ç£Š Sat, 09 May 2009 07:05:00 GMT http://www.aygfsteel.com/LittleDS/archive/2009/05/09/269757.html http://www.aygfsteel.com/LittleDS/comments/269757.html http://www.aygfsteel.com/LittleDS/archive/2009/05/09/269757.html#Feedback 0 http://www.aygfsteel.com/LittleDS/comments/commentRss/269757.html http://www.aygfsteel.com/LittleDS/services/trackbacks/269757.html
Section 1.0
TEXT
Introduction
介ç»å•¦ï¼Œæˆ‘是没看
Section 1.1
TEXT
Submitting Solutions
äº¤ä½ æ€Žä¹ˆæäº¤½E‹åºçš„,å¯ä»¥çœ‹çœ‹
PROB Your Ride Is
Here
最直接的方法是直接乘,然åŽmod 47,ä¸è¿‡å¯ä»¥åˆ©ç”¨ä½™æ•°å®šç†åQŒè¾¹ä¹˜è¾¹mod
TEXT Contest
Problem Types
è·Œ™¿‡
TEXT Ad Hoc
Problems
è·Œ™¿‡
PROB Greedy Gift Givers
½Ž€å•的模拟题,ž®±æ˜¯å¤„ç†åå—的时候有点烦(ch¨³)
PROB Friday the Thirteenth
数日期的题,我ä¸çŸ¥é“一天天的模拟能ä¸èƒ½˜q‡ï¼Œæˆ‘是åªç®—äº?ji¨£n)周五这一天的ã€?/td>
PROB Broken Necklace
也是模拟题,ä¸è¿‡å¾ˆè¦¾l†å¿ƒ(j¨©)åQŒæœ‰å¾ˆå¤šç‰ÒŽ(gu¨©)®Šæƒ…况åQŒæ¯”如全是wã€?/td>
Section 1.2
TEXT
Complete Search
è·Œ™¿‡
PROB Milking Cows
直接模拟应该是过ä¸äº†(ji¨£n)的,
PROB Transformations
模拟题,直接把所有å¯èƒ½çš„pattern生æˆå‡ºæ¥åQŒç„¶åŽæ¯”较就è¡?/td>
PROB Name That Number
æ£ç¡®æ–ÒŽ(gu¨©)³•是把å—典里é¢çš„æ‰€æœ‰wordè½¬åŒ–æˆæ•°å—ï¼Œç„¶åŽæ¯”较?y¨u)®Þp¡Œã€?/td>
PROB Palindromic Squares
直接枚ä‹D
PROB Dual Palindromes
DFSåQŒæ³¨æ„æœç´¢çš„æ—¶å€™ï¼Œåªè¦æœçƒ¦(ch¨³)回文数å‰ä¸€åŠå°±è¡Œï¼ŒåŽé¢çš„直接åå‘å¤åˆ¶ä¸€ä¸‹å°±å¥?/td>
Section 1.3
TEXT
Greedy Algorithm
è·Œ™¿‡
PROB Mixing Milk
½Ž€å•的贪心(j¨©)
PROB Barn Repair
也是贪心(j¨©)法,把最大的¾~éš™ž®±å‡ºæ¥ï¼Œç„¶åŽåŽ»è¦†ç›?/td>
TEXT Winning
Solutions
è·Œ™¿‡
PROB Calf Flac
æžšä‹DåQŒä»Žæ²¡ä¸€ç‚¹å‘两边枚ä‹D
PROB Prime Cryptarithm
直接枚ä‹DåQŒåæ£åªæœ?个数
Section 1.4
TEXT
More Search Techniques
è·Œ™¿‡
PROB Packing Rectangles
æ¶å¿ƒ(j¨©)题,我没åšï¼š(x¨¬)P
PROB The Clocks
看了(ji¨£n)一个牛人的¾l“题报告åŽè¿‡çš„,那ä½ç‰›ähæ€È»“äº?ji¨£n)一个数¾l„,ž®±æ˜¯å¦‚何让表针è{一圈回到原æ¥ä½¾|®çš„æ“ä½œ¾l„åˆ
PROB Arithmetic Progressions
æœçƒ¦(ch¨³)åQŒç¡¬æœçš„
PROB Mother's Milk
BFSåQŒæŠŠæ‰€æœ‰çš„æƒ…况都弄出æ¥
Section 1.5
TEXT
Introduction to Binary Numbers
è·Œ™¿‡
PROB Number Triangles
¾lå…¸DP
PROB Prime Palindromes
æœçƒ¦(ch¨³)åQŒç”Ÿæˆå›žæ–‡æ•°åQŒæ£€æŸ¥æ˜¯å¦æ˜¯ç´ 数。需è¦ä¸€ç‚¹ç‚¹å‰ªæžåQˆé•¿åº¦æ˜¯å¶æ•°çš„回文数åQŒé™¤äº?1ä¹‹å¤–å¿…ç„¶æ˜¯åˆæ•ŽÍ¼Œå› 它肯定æ˜?1çš„å€æ•°åQ?/td>
PROB SuperPrime Rib
直接枚ä‹D
PROB Checker Challenge
八皇åŽå•ŠåQŒç”¨æœ€¾l典的算法就能过åQŒä¸˜q‡å¦‚果想优化的éžå¸¸å¿«åQŒå¯èƒ½éœ€è¦å…¶ä»–的办法åQŒä¹Ÿæœ‰å¾ˆå¤æ‚çš„ã€?/td>
]]> ¾lˆäºŽæŠŠUSACOåšå®Œäº?/title><link>http://www.aygfsteel.com/LittleDS/archive/2009/05/09/269749.html</link><dc:creator>æ¨ç£Š</dc:creator><author>æ¨ç£Š</author><pubDate>Sat, 09 May 2009 05:50:00 GMT</pubDate><guid>http://www.aygfsteel.com/LittleDS/archive/2009/05/09/269749.html</guid><wfw:comment>http://www.aygfsteel.com/LittleDS/comments/269749.html</wfw:comment><comments>http://www.aygfsteel.com/LittleDS/archive/2009/05/09/269749.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/LittleDS/comments/commentRss/269749.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/LittleDS/services/trackbacks/269749.html</trackback:ping><description><![CDATA[<img alt="" src="http://www.aygfsteel.com/images/blogjava_net/littleds/USACO.jpg" width="567" height="173" /><br />
<br />
感想å?qi¨¢ng)题解待会(x¨¬)å„¿å†å‘åQšï¼‰(j¨ª)<br />
<br />
<img src ="http://www.aygfsteel.com/LittleDS/aggbug/269749.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/LittleDS/" target="_blank">æ¨ç£Š</a> 2009-05-09 13:50 <a href="http://www.aygfsteel.com/LittleDS/archive/2009/05/09/269749.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item><item><title>Picture åQˆUSACOåQ?/title><link>http://www.aygfsteel.com/LittleDS/archive/2009/05/07/269352.html</link><dc:creator>æ¨ç£Š</dc:creator><author>æ¨ç£Š</author><pubDate>Thu, 07 May 2009 02:33:00 GMT</pubDate><guid>http://www.aygfsteel.com/LittleDS/archive/2009/05/07/269352.html</guid><wfw:comment>http://www.aygfsteel.com/LittleDS/comments/269352.html</wfw:comment><comments>http://www.aygfsteel.com/LittleDS/archive/2009/05/07/269352.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/LittleDS/comments/commentRss/269352.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/LittleDS/services/trackbacks/269352.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #008080;"> 1</span> <span style="color: #0000ff;">import</span><span style="color: #000000;"> java.io.</span><span style="color: #000000;">*</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;"> 2</span> <span style="color: #0000ff;">import</span><span style="color: #000000;"> java.util.</span><span style="color: #000000;">*</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;"> 3</span> <span style="color: #008000;">/*</span><span style="color: #008000;"><br />
</span><span style="color: #008080;"> 4</span> <span style="color: #008000;">ID: yanglei4<br />
</span><span style="color: #008080;"> 5</span> <span style="color: #008000;">LANG: JAVA<br />
</span><span style="color: #008080;"> 6</span> <span style="color: #008000;">TASK:picture<br />
</span><span style="color: #008080;"> 7</span> <span style="color: #008000;">*/</span><span style="color: #000000;"><br />
</span><span style="color: #008080;"> 8</span> <span style="color: #0000ff;">public</span><span style="color: #000000;"> </span><span style="color: #0000ff;">class</span><span style="color: #000000;"> picture {<br />
</span><span style="color: #008080;"> 9</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;">[] level;<br />
</span><span style="color: #008080;">10</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> N;<br />
</span><span style="color: #008080;">11</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> ans </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">12</span> <span style="color: #000000;"> <br />
</span><span style="color: #008080;">13</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> </span><span style="color: #0000ff;">class</span><span style="color: #000000;"> Line </span><span style="color: #0000ff;">implements</span><span style="color: #000000;"> Comparable</span><span style="color: #000000;"><</span><span style="color: #000000;">Line</span><span style="color: #000000;">></span><span style="color: #000000;"> {<br />
</span><span style="color: #008080;">14</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> s,t,p;<br />
</span><span style="color: #008080;">15</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">boolean</span><span style="color: #000000;"> start;<br />
</span><span style="color: #008080;">16</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> Line(</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> a, </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> b, </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> c, </span><span style="color: #0000ff;">boolean</span><span style="color: #000000;"> d) {<br />
</span><span style="color: #008080;">17</span> <span style="color: #000000;"> s </span><span style="color: #000000;">=</span><span style="color: #000000;"> a;<br />
</span><span style="color: #008080;">18</span> <span style="color: #000000;"> t </span><span style="color: #000000;">=</span><span style="color: #000000;"> b;<br />
</span><span style="color: #008080;">19</span> <span style="color: #000000;"> p </span><span style="color: #000000;">=</span><span style="color: #000000;"> c;<br />
</span><span style="color: #008080;">20</span> <span style="color: #000000;"> start </span><span style="color: #000000;">=</span><span style="color: #000000;"> d;<br />
</span><span style="color: #008080;">21</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">22</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> compareTo(Line o) {<br />
</span><span style="color: #008080;">23</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">if</span><span style="color: #000000;"> (</span><span style="color: #0000ff;">this</span><span style="color: #000000;">.p </span><span style="color: #000000;">==</span><span style="color: #000000;"> o.p) {<br />
</span><span style="color: #008080;">24</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">if</span><span style="color: #000000;"> (</span><span style="color: #0000ff;">this</span><span style="color: #000000;">.start)<br />
</span><span style="color: #008080;">25</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #000000;">-</span><span style="color: #000000;">1</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">26</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">else</span><span style="color: #000000;"><br />
</span><span style="color: #008080;">27</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #000000;">1</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">28</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">29</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #0000ff;">this</span><span style="color: #000000;">.p </span><span style="color: #000000;"><</span><span style="color: #000000;"> o.p </span><span style="color: #000000;">?</span><span style="color: #000000;"> </span><span style="color: #000000;">-</span><span style="color: #000000;">1</span><span style="color: #000000;"> : </span><span style="color: #000000;">1</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">30</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">31</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">32</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> </span><span style="color: #0000ff;">void</span><span style="color: #000000;"> Scan(Line[] L) {<br />
</span><span style="color: #008080;">33</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">for</span><span style="color: #000000;"> (</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">;i </span><span style="color: #000000;"><=</span><span style="color: #000000;"> </span><span style="color: #000000;">20000</span><span style="color: #000000;">;i</span><span style="color: #000000;">++</span><span style="color: #000000;">)<br />
</span><span style="color: #008080;">34</span> <span style="color: #000000;"> level[i] </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">35</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">for</span><span style="color: #000000;"> (</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">; i </span><span style="color: #000000;"><</span><span style="color: #000000;"> </span><span style="color: #000000;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">*</span><span style="color: #000000;"> N;i</span><span style="color: #000000;">++</span><span style="color: #000000;">) {<br />
</span><span style="color: #008080;">36</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">if</span><span style="color: #000000;"> (L[i].start) {<br />
</span><span style="color: #008080;">37</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">for</span><span style="color: #000000;"> (</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> j </span><span style="color: #000000;">=</span><span style="color: #000000;"> L[i].s;j </span><span style="color: #000000;"><</span><span style="color: #000000;"> L[i].t;j</span><span style="color: #000000;">++</span><span style="color: #000000;">) {<br />
</span><span style="color: #008080;">38</span> <span style="color: #000000;"> level[j]</span><span style="color: #000000;">++</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">39</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">if</span><span style="color: #000000;"> (level[j]</span><span style="color: #000000;">==</span><span style="color: #000000;">1</span><span style="color: #000000;">)<br />
</span><span style="color: #008080;">40</span> <span style="color: #000000;"> ans</span><span style="color: #000000;">++</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">41</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">42</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">43</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">else</span><span style="color: #000000;"> {<br />
</span><span style="color: #008080;">44</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">for</span><span style="color: #000000;"> (</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> j </span><span style="color: #000000;">=</span><span style="color: #000000;"> L[i].s;j </span><span style="color: #000000;"><</span><span style="color: #000000;"> L[i].t;j</span><span style="color: #000000;">++</span><span style="color: #000000;">) {<br />
</span><span style="color: #008080;">45</span> <span style="color: #000000;"> level[j]</span><span style="color: #000000;">--</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">46</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">if</span><span style="color: #000000;"> (level[j]</span><span style="color: #000000;">==</span><span style="color: #000000;">0</span><span style="color: #000000;">)<br />
</span><span style="color: #008080;">47</span> <span style="color: #000000;"> ans</span><span style="color: #000000;">++</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">48</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">49</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">50</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">51</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">52</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> </span><span style="color: #0000ff;">void</span><span style="color: #000000;"> done() </span><span style="color: #0000ff;">throws</span><span style="color: #000000;"> IOException {<br />
</span><span style="color: #008080;">53</span> <span style="color: #000000;"> BufferedReader f </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> BufferedReader(</span><span style="color: #0000ff;">new</span><span style="color: #000000;"> FileReader(</span><span style="color: #000000;">"</span><span style="color: #000000;">picture.in</span><span style="color: #000000;">"</span><span style="color: #000000;">));<br />
</span><span style="color: #008080;">54</span> <span style="color: #000000;"> PrintWriter out </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> PrintWriter(</span><span style="color: #0000ff;">new</span><span style="color: #000000;"> BufferedWriter(</span><span style="color: #0000ff;">new</span><span style="color: #000000;"> FileWriter(</span><span style="color: #000000;">"</span><span style="color: #000000;">picture.out</span><span style="color: #000000;">"</span><span style="color: #000000;">)));<br />
</span><span style="color: #008080;">55</span> <span style="color: #000000;"> N </span><span style="color: #000000;">=</span><span style="color: #000000;"> Integer.parseInt(f.readLine());<br />
</span><span style="color: #008080;">56</span> <span style="color: #000000;"> Line[] Lx </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> Line[</span><span style="color: #000000;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">*</span><span style="color: #000000;"> N];<br />
</span><span style="color: #008080;">57</span> <span style="color: #000000;"> Line[] Ly </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> Line[</span><span style="color: #000000;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">*</span><span style="color: #000000;"> N];<br />
</span><span style="color: #008080;">58</span> <span style="color: #000000;"> <br />
</span><span style="color: #008080;">59</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">for</span><span style="color: #000000;"> (</span><span style="color: #0000ff;">int</span><span style="color: #000000;"> i </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #000000;">0</span><span style="color: #000000;">; i </span><span style="color: #000000;"><</span><span style="color: #000000;"> N; i</span><span style="color: #000000;">++</span><span style="color: #000000;">) {<br />
</span><span style="color: #008080;">60</span> <span style="color: #000000;"> StringTokenizer st </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> StringTokenizer(f.readLine());<br />
</span><span style="color: #008080;">61</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> x1 </span><span style="color: #000000;">=</span><span style="color: #000000;"> Integer.parseInt(st.nextToken());</span><span style="color: #008000;">//</span><span style="color: #008000;">left x</span><span style="color: #008000;"><br />
</span><span style="color: #008080;">62</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> y1 </span><span style="color: #000000;">=</span><span style="color: #000000;"> Integer.parseInt(st.nextToken());</span><span style="color: #008000;">//</span><span style="color: #008000;">left y</span><span style="color: #008000;"><br />
</span><span style="color: #008080;">63</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> x2 </span><span style="color: #000000;">=</span><span style="color: #000000;"> Integer.parseInt(st.nextToken());</span><span style="color: #008000;">//</span><span style="color: #008000;">right x</span><span style="color: #008000;"><br />
</span><span style="color: #008080;">64</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> y2 </span><span style="color: #000000;">=</span><span style="color: #000000;"> Integer.parseInt(st.nextToken());</span><span style="color: #008000;">//</span><span style="color: #008000;">right y</span><span style="color: #008000;"><br />
</span><span style="color: #008080;">65</span> <span style="color: #000000;"> x1 </span><span style="color: #000000;">+=</span><span style="color: #000000;"> </span><span style="color: #000000;">10000</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">66</span> <span style="color: #000000;"> y1 </span><span style="color: #000000;">+=</span><span style="color: #000000;"> </span><span style="color: #000000;">10000</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">67</span> <span style="color: #000000;"> x2 </span><span style="color: #000000;">+=</span><span style="color: #000000;"> </span><span style="color: #000000;">10000</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">68</span> <span style="color: #000000;"> y2 </span><span style="color: #000000;">+=</span><span style="color: #000000;"> </span><span style="color: #000000;">10000</span><span style="color: #000000;">;<br />
</span><span style="color: #008080;">69</span> <span style="color: #000000;"> Lx[</span><span style="color: #000000;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">*</span><span style="color: #000000;"> i] </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> Line(x1,x2,y1,</span><span style="color: #0000ff;">true</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">70</span> <span style="color: #000000;"> Lx[</span><span style="color: #000000;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">*</span><span style="color: #000000;"> i </span><span style="color: #000000;">+</span><span style="color: #000000;"> </span><span style="color: #000000;">1</span><span style="color: #000000;">] </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> Line(x1,x2,y2,</span><span style="color: #0000ff;">false</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">71</span> <span style="color: #000000;"> Ly[</span><span style="color: #000000;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">*</span><span style="color: #000000;"> i] </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> Line(y1,y2,x1,</span><span style="color: #0000ff;">true</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">72</span> <span style="color: #000000;"> Ly[</span><span style="color: #000000;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">*</span><span style="color: #000000;"> i </span><span style="color: #000000;">+</span><span style="color: #000000;"> </span><span style="color: #000000;">1</span><span style="color: #000000;">] </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> Line(y1,y2,x2,</span><span style="color: #0000ff;">false</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">73</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">74</span> <span style="color: #000000;"> Arrays.sort(Lx);<br />
</span><span style="color: #008080;">75</span> <span style="color: #000000;"> Arrays.sort(Ly);<br />
</span><span style="color: #008080;">76</span> <span style="color: #000000;"> level </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;">[</span><span style="color: #000000;">20001</span><span style="color: #000000;">];<br />
</span><span style="color: #008080;">77</span> <span style="color: #000000;"> Scan(Lx);<br />
</span><span style="color: #008080;">78</span> <span style="color: #000000;"> Scan(Ly);<br />
</span><span style="color: #008080;">79</span> <span style="color: #000000;"> out.println(ans);<br />
</span><span style="color: #008080;">80</span> <span style="color: #000000;"> <br />
</span><span style="color: #008080;">81</span> <span style="color: #000000;"> out.close(); <br />
</span><span style="color: #008080;">82</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">83</span> <span style="color: #000000;"> </span><span style="color: #0000ff;">public</span><span style="color: #000000;"> </span><span style="color: #0000ff;">static</span><span style="color: #000000;"> </span><span style="color: #0000ff;">void</span><span style="color: #000000;"> main(String[] args) </span><span style="color: #0000ff;">throws</span><span style="color: #000000;"> IOException {<br />
</span><span style="color: #008080;">84</span> <span style="color: #000000;"> picture t </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> picture();<br />
</span><span style="color: #008080;">85</span> <span style="color: #000000;"> t.done();<br />
</span><span style="color: #008080;">86</span> <span style="color: #000000;"> System.exit(</span><span style="color: #000000;">0</span><span style="color: #000000;">);<br />
</span><span style="color: #008080;">87</span> <span style="color: #000000;"> }<br />
</span><span style="color: #008080;">88</span> <span style="color: #000000;">}<br />
</span><span style="color: #008080;">89</span> </div>
<br />
˜q™é“题用äº?ji¨£n)离散化的方æ?br />
<br />
å…¶å®žæœ€æœ´ç´ çš„æ–¹æ³•å°±æ˜¯åœ¨ä¸€ä¸?0000*20000çš„çŸ©é˜µä¸Šé¢æŠŠæ‰€æœ‰çš„ç‚ÒŽ(gu¨©)出æ¥åQŒç„¶åŽæŠŠ˜q™äº›ç‚¹çš„周长½Ž—出æ¥ï¼Œä¸è¿‡½Ž—周长这一æ¥ä¹Ÿæ˜¯å¾ˆéºÈƒ¦(ch¨³)çš„ã€?br />
<br />
å› äØ“(f¨´)毕竟˜q˜æœ‰å¯èƒ½å‡ºçް“½Iºå¿ƒ(j¨©)”的情å†?br />
<br />
ç”¨ç¦»æ•£åŒ–çš„æ–¹æ³•å°±æ˜¯æƒ³åŠžæ³•åªæ•°æ¯æ¡¾U¿æ®µåQŒè€Œä¸åŽÈ®¡å…¶ä»–½Iºç™½çš„地æ–ÒŽ(gu¨©)˜¯æ€Žä¹ˆæ ïL(f¨¥ng)š„ã€?br />
<br />
ç”׃ºŽæˆ‘们是需è¦ç®—周长的,所以åªéœ€è¦çœ‹çŸ©åŞ的四æ¡è¾¹ž®±å¯ä»¥äº†(ji¨£n)ã€?br />
<br />
ç„¶åŽåQŒæˆ‘们就是先看所有的横边åQŒå†çœ‹ç«–è¾V€?br />
<br />
先把横边全部选出æ¥ï¼Œæ”‘Öœ¨ä¸€ä¸ªæ•°¾l„里é¢ï¼Œç„¶å޿ޒåºåQŒä»Žä¸‹åˆ°ä¸Šã€?br />
<br />
一个矩形的两æ¡è¾¹è¦åˆ†æˆå§‹è¾¹å’Œç»ˆè¾¹ï¼ŒæŽ’åºçš„æ—¶å€™ï¼Œå¦‚æžœ¾Uµåæ ‡ç›¸åŒï¼Œé‚£ä¹ˆåº”该把始è¾ÒŽ(gu¨©)”¾åœ¨ç»ˆè¾V€?br />
<br />
如果é‡åˆ°å§‹è¾¹åQŒé‚£ä¹ˆå°±æŠŠè¿™æ¡è¾¹ä¸Šé¢çš„æ‰€æœ‰ç‚¹level[j]åŠ ä¸€ã€?br />
<br />
如果é‡åˆ°¾lˆè¾¹åQŒå°±æŠŠé‚£æ¡è¾¹ä¸Šæ‰€æœ‰çš„点的level[j]å‡ä¸€<br />
<br />
于是åQŒå½“一æ¡è¾¹ä¸Šçš„点的leveæ˜?的时候,那么ž®Þp¯´æ˜Žè¿™æ¡è¾¹è‚¯å®šæ˜¯å§‹è¾¹è¾¹¾~˜ï¼Œæ‰€ä»¥è¦ans++<br />
<br />
å¦ä¸€¿U情况,当一æ¡è¾¹ä¸Šçš„点的levelæ˜?的时候,那么说明˜q™ä¸ªç‚ÒŽ(gu¨©)˜¯¾lˆè¾¹è¾¹ç¼˜åQŒæ‰€ä»¥ans++<br />
<br />
˜q™æ ·æ‰«å®Œæ¨ªè¾¹å†æ‰«ç«–è¾¹ã€?br />
<br />
最åŽçš„ansž®±æ˜¯å‘¨é•¿äº?ji¨£n)ã€?br />
<br />
ä¸è¿‡˜q™ä¸ª½Ž—æ³•çš„æ—¶é—´æ•ˆçŽ‡åÆˆä¸æ˜¯éžå¸¸çš„好åQŒå› ä¸ºæ•°æ®æ¯”较弱åQˆå¯èƒ½æ˜¯˜q™æ ·åQ?br />
<br />
如果真的是有5000个矩形,没个矩åŞ都是20000×20000的,那么å¯èƒ½ä¼?x¨¬)è¶…æ?br />
<br />
<img src ="http://www.aygfsteel.com/LittleDS/aggbug/269352.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/LittleDS/" target="_blank">æ¨ç£Š</a> 2009-05-07 10:33 <a href="http://www.aygfsteel.com/LittleDS/archive/2009/05/07/269352.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item><item><title>USACO¾lˆäºŽåˆ?.5äº?/title><link>http://www.aygfsteel.com/LittleDS/archive/2009/05/06/269313.html</link><dc:creator>æ¨ç£Š</dc:creator><author>æ¨ç£Š</author><pubDate>Wed, 06 May 2009 15:57:00 GMT</pubDate><guid>http://www.aygfsteel.com/LittleDS/archive/2009/05/06/269313.html</guid><wfw:comment>http://www.aygfsteel.com/LittleDS/comments/269313.html</wfw:comment><comments>http://www.aygfsteel.com/LittleDS/archive/2009/05/06/269313.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/LittleDS/comments/commentRss/269313.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/LittleDS/services/trackbacks/269313.html</trackback:ping><description><![CDATA[虽然ä»?.1开始,大部分题目都è¦å€ŸåŠ©äºŽNoCow和网上的解题报告åQŒä½†æ˜¯è¿˜æ˜¯å¦åˆîCº†(ji¨£n)ä¸å°‘的东è¥Ñ€?br />
<br />
原æ¥è®¤äØ“(f¨´)åªè¦ç†Ÿç»ƒçš„æŽŒæ¡å„¿U算法,那就å¯ä»¥éšä¾¿åŽÕdˆ‡é¢˜ï¼ŒçŽ°åœ¨å‘çŽ°å…¶å®žä¸æ˜¯˜q™æ ·ã€?br />
<br />
有很多题目,都需è¦è¿›è¡Œä¸€äº›è{化,也å¯ä»¥è¯´æ˜¯å¾æ¨¡ï¼Œæ‰èƒ½å¥—用现æˆçš„ç®—æ³?br />
<br />
而有一些题目,æ ÒŽ(gu¨©)œ¬ž®±æ²¡æœ‰çްæˆçš„½Ž—法åQŒåªèƒ½ä½ 自己åŽÀLƒ³<br />
<br />
˜q™ç§½Ž—法基本上是ä¸å±žäºŽä“Q何一¾cÈš„<br />
<br />
˜q˜æœ‰ä¸€äº›æ¯”如说剪æžåQŒè™½ç„¶æœç´¢è°éƒ½ä¼š(x¨¬)åQŒBrute Forceè°éƒ½ä¼?x¨¬)写åQŒä½†æ˜¯å‰ªæžå´ä¸æ˜¯è°éƒ½èƒ½å†™çš„出æ¥çš„<br />
<br />
˜q™å°±éœ€è¦ä¸€äº›æ•°å¦åŠŸåº?br />
<br />
现在å‘现˜q™ä¸ªä¸œè¥¿å¿…é¡»è¦é•¿òq´ç¯æœˆçš„¿U¯ç¯æ‰èƒ½å¤Ÿè¾¾åˆ°é©¾è½Õd°±ç†Ÿçš„境界ã€?br />
<br />
但是ž®Þq®—é‚£æ ·åQŒä¹Ÿä¸èƒ½ä¿è¯æ‰€æœ‰çš„题目都会(x¨¬)åšã€?br />
<br />
<img src ="http://www.aygfsteel.com/LittleDS/aggbug/269313.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/LittleDS/" target="_blank">æ¨ç£Š</a> 2009-05-06 23:57 <a href="http://www.aygfsteel.com/LittleDS/archive/2009/05/06/269313.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item></channel></rss> <footer>
<div class="friendship-link">
<a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a>
</div>
</footer>
Ö÷Õ¾Ö©Öë³ØÄ£°å£º
<a href="http://" target="_blank">À´±öÊÐ</a>|
<a href="http://" target="_blank">½ðÐã</a>|
<a href="http://" target="_blank">¾üÊÂ</a>|
<a href="http://" target="_blank">Õ´»¯ÏØ</a>|
<a href="http://" target="_blank">»ôÇñÏØ</a>|
<a href="http://" target="_blank">µ±ÑôÊÐ</a>|
<a href="http://" target="_blank">½ªÑßÊÐ</a>|
<a href="http://" target="_blank">Ò³ÓÎ</a>|
<a href="http://" target="_blank">¸®¹ÈÏØ</a>|
<a href="http://" target="_blank">¶«Ã÷ÏØ</a>|
<a href="http://" target="_blank">³¤¸ðÊÐ</a>|
<a href="http://" target="_blank">ÂÀÁºÊÐ</a>|
<a href="http://" target="_blank">ËÉÅËÏØ</a>|
<a href="http://" target="_blank">÷ÖÝÊÐ</a>|
<a href="http://" target="_blank">èï³ÇÏØ</a>|
<a href="http://" target="_blank">°²ÇìÊÐ</a>|
<a href="http://" target="_blank">³Ê¹±ÏØ</a>|
<a href="http://" target="_blank">ÓÀÐÂÏØ</a>|
<a href="http://" target="_blank">Çì³ÇÏØ</a>|
<a href="http://" target="_blank">ÑÓ¼ªÊÐ</a>|
<a href="http://" target="_blank">ÐËÈÊÏØ</a>|
<a href="http://" target="_blank">ÄÛ½ÏØ</a>|
<a href="http://" target="_blank">³¤ÖÎÊÐ</a>|
<a href="http://" target="_blank">Ǭ°²ÏØ</a>|
<a href="http://" target="_blank">½³Ç</a>|
<a href="http://" target="_blank">³ö¹ú</a>|
<a href="http://" target="_blank">¶Ø»ÍÊÐ</a>|
<a href="http://" target="_blank">ÁºÆ½ÏØ</a>|
<a href="http://" target="_blank">´ó¶É¿ÚÇø</a>|
<a href="http://" target="_blank">×ÛÒÕ</a>|
<a href="http://" target="_blank">ÀÖɽÊÐ</a>|
<a href="http://" target="_blank">Áúº£ÊÐ</a>|
<a href="http://" target="_blank">ÐÇ×ù</a>|
<a href="http://" target="_blank">½ÃÅÊÐ</a>|
<a href="http://" target="_blank">ÐìÎÅÏØ</a>|
<a href="http://" target="_blank">ºÍÁúÊÐ</a>|
<a href="http://" target="_blank">ÐÂÒ°ÏØ</a>|
<a href="http://" target="_blank">°¢¿ËËÕÊÐ</a>|
<a href="http://" target="_blank">Ð˺ÍÏØ</a>|
<a href="http://" target="_blank">Üþ¾ÏØ</a>|
<a href="http://" target="_blank">°²ÔóÏØ</a>|
<script>
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
}
else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
</script>
</body>