這兩天的失誤是真的有點大,一定要寫下來提醒自己。
day1
拿到題,t1 求phi ; t2 二分or單調佇列 ; t3 不會做(看錯題了一開始)
於是我十分謹慎地推了一遍phi的公式,我記得phi是乙個積性函式,很快就推出來了。
開始打程式。一開始沒有考慮到b次方,於是在乙個地方乘了b【殊不知還有乙個地方,分解質因數剩下最大的質數忘記乘了】。
對拍,因為只能出小資料,是拍不出最大的質數這個錯誤的。
其次,還有乙個錯誤,把mo2寫成了mo,導致取模的值完全不一樣。這個也是拍不出來的。
當我拍了之後就沒去理他!沒去理他!!!
t2 也沒怎麼難點,直接就推過去了,剩下2h左右做t3
t3 原題是 「 統計有多少
i 滿足i∈
[l,r
]∧ai
∈s」,原意是「 統計有多少
i 滿足ai
∈s,i
∈[l,
r]」,我理解成了「統計有多少
i 滿足ai
andi
∈s,i
∈[l,
r]」 就這樣,這題成為了完全不會做的題,有and操作怎麼做?
此時我想到了分塊,map。。。。。。浪費了大概40min有多。
後來再看題目,才理解題目意思。接著我就沒往分塊,map上面想,直接就另闢蹊徑了,然後就徹底走遠了,還以為自己能夠打出來,剩下20min才發現演算法真的有問題,於是就急急忙忙去打了個暴力。一開始把<=1e4莫名其妙只找了3位數的值沒找4位數,本來50分的良心暴力愣是只拿了35分。
day1真的是失誤連連,t1的打錯,沒有靜下心來好好地讀程式。
t3從一開始的看錯題,到後面的構思直接另闢蹊徑,走得更遠了。
再提醒自己一次:好好看題,好好檢查。
無論多麼趕時間,最後的10min一定預留來檢查程式。以前一直是為了rush而省去這一步驟,寧可rush也不檢查。現在絕壁不行,寧可不rush。要麼就在rush之前花10min檢查。不怕不會做,就怕會做的分會丟。
實現上,不要再用mo mo2 這種confusing的容易錯的名字,開成不一樣的字母,不然打錯了都看不出來。改程式的時候一定要小心,「牽一髮而動全身」,程式也是乙個嚴謹的整體,切不可撿了芝麻丟了西瓜。
以上就是day1
day2
審題;
t1 暴力, t2 貪心 , t3 不會做。
先很快把t1做完了,真的是簡單題,純暴力,仔細檢查了兩三次**都沒問題除了幾個資料也沒問題就過了。
t2 貪心策略一開始證錯了,用錯誤的演算法做了,打完10點,覺得不靠譜,打了對拍,發現自己錯了,此時10:30。
說實話有點慌,第三題還沒做,但是很快就平靜下來找錯誤了。
貪心策略錯了,要換一種【使兩個值盡可能接近】
這個怎麼做呢?我想到了揹包,然後發現死做時間過不了,又仔細分析發現可以省去冗雜操作。此時10:50
抓緊時間趕緊打,但是打的時候考慮不全面。1、sum沒清零 2、沒有兩個值都做一次。3、揹包每次沒清零。依次發現這些錯誤並改過來已經11:50了,t3直接告破,50分暴力都沒打。
今天的問題出現在**呢?
不嚴謹。
首先是貪心策略,顯然是錯誤的貪心策略為什麼當時就覺得是對的?就因為用了錯誤的證明方法,沒有把所有情況都列舉出來。
其次是兩種情況都要考慮,這在思考的時候有涉及到,但是真正去做的時候沒有打出來,因為想的時候沒有特別強調,沒有真的去構思程式怎麼打。
再其次是打程式的時候,清零要特別提示的嗎?每用乙個變數自然就要想到 初值,範圍,資料型別。
t2花費了太多的時間,t3直接就不夠時間了
不得不說這兩天的失誤真的是有點大。
我們再來總結一下
1 好好看題。
有的時候真的是樣例都救不了你,如果你理解錯題目的話。看清楚每乙個符號,看清楚每乙個字!
如果真的看錯題了,一定要好好把題目再想一次,之前的思路要全部重新來一次,因為正解就會在你看錯題目的時候被你否定。
2 好好檢查。
無論多麼趕時間,最後的10min一定預留來檢查程式。以前一直是為了rush而省去這一步驟,寧可rush也不檢查。現在絕壁不行,寧可不rush。要麼就在rush之前花10min檢查。不怕不會做,就怕會做的分會丟。
3 一定要嚴謹。
提出演算法時,正確性一定要保證,無論證明多複雜,除非你根本不會證,這樣的演算法一定要慎用,除非走投無路不要用。要想複雜度,每一步怎麼打,真的要在腦子裡有**。
使用變數時,初值、範圍、型別,乙個都不能跑。
說歸說,但結果早已塵埃落定了。
正如歌詞所說:「可惜沒如果」
嚴謹,細心,才是程式設計的王道。有bug的程式再多功能都沒用。
不要放棄思考
NOIP2013模擬聯考5 軍訓
hysbz 開學了!今年hysbz 有n 個男生來上學,學號為1 n,每個學生都必須參加軍訓。在這種比較墮落的學校裡,每個男生都會有gi 個女朋友,而且每個人都會有乙個欠扁值hi。學校為了保證軍訓時教官不會因為學生們都是人生贏家或者是太欠扁而發生打架事故,所以要把學生們分班,並做出了如下要求 1.分...
NOIP提高組五校聯考 string
給出乙個長度為n,由小寫英文本母組成的字串s,求在所有由小寫英文本母組成且長度為n 且恰好有k 位與s 不同的字串中,給定字串t 按照字典序排在第幾位。由於答案可能很大,模10 9 7 輸出。列舉乙個 i 表示當前做到第 i位,而前i 1 位的字元都已經與目標串的前i 1 位相同,那麼對於當前位置可...
NOIP2013模擬聯考5 休息 rest
description 休息的時候,可以放鬆放鬆渾身的肌肉,打掃打掃衛生,感覺很舒服。在某一天,某lmz 開始整理他那書架。已知他的書有n 本,從左到右按順序排列。他想把書從矮到高排好序,而每一本書都有乙個獨一無二的高度hi。他排序的方法是 每一次將所有的書劃分為盡量少的連續部分,使得每一部分的書的...