這是人生中第一次模擬賽,還是有一些地方不太細心,比如說
《因為打錯檔名而痛失100分這件事》
然後因為時間有限只有二十分鐘導致三道題只能取捨著做(還是我菜
第一題計算係數,看了兩眼,數學渣選擇直接跳過(後來證明這個選擇非常正確)
第二題漢諾塔,看到題目先想到的是「move 1 from a to c」這類的(其實這習慣不怎麼好,畢竟萬一在原題基礎上稍加改動可能就被坑了),然後第二眼看見是輸出最少步數,想到了\(2^n-1\)這個公式。
第三題骨牌覆蓋,很簡單的一道遞迴(斐波那契數列)題,一方面是做過,另一方面是對這類簡單的、會用到斐波那契的問題已經稍微有了點直覺,知道了需要用斐波那契做,還有就是列舉前幾項,一看,誒嘿我會了
但是如果看我的**會發現,我寫了個高精度......為什麼呢,因為我測邊界資料發現int不行,又拿long long去試,然後我printf裡面的%d忘改了。。。忘。改。了。o(≧口≦)o
然後我一看好傢伙這麼麻煩還得寫高精,尋思了一下,寫了個結構體高精加的函式沒辦法,拿著錘子看什麼都像釘子(?......這麼一搞,我感覺多耗了一倍還多的時間
檔名、固定輸出一定直接複製,再不濟也要檢查一下
改變量型別的時候記得想一下有沒有printf裡面的輸出型別沒改
計算係數
題目描述:給定乙個多項式\((ax+by)^k\),請求出多項式展開後\(x^ny^m\)項的係數。考試時候完全不知道怎麼做輸入格式:共一行,包含5個整數,分別為a,b,k,n,m,每兩個整數之間用乙個空格隔開。
輸出格式:輸出共1行,包含乙個整數,表示所求的係數,這個係數可能很大,輸出對10007取模後的結果。
樣例輸入:1 1 3 1 2
樣例輸出:3
資料範圍:
對於30%的資料,有\(0≤k≤10\);
對於50%的資料,有\(a=1,b=1\);
對於100%的資料,有\(0≤k≤1,000,0≤n,m≤k\),且\(n+m=k,0≤a,b≤1,000,000\)。
重點是我在紙上舉例好像還算錯了。。。淦!
交完之後去洛谷搜了一下題解,奧原來是楊輝三角嗎
當然,可以選擇打表找規律(?
首先列舉\(a=1,b=1\)的情況:
\(k=1,(x+y)^k=x+y\)去掉x,y,就會發現這是個楊輝三角...\(k=2,(x+y)^k=x^2+2xy+y^2\)
\(k=3,(x+y)^k=x^3+3x^2y+3xy^2+y^3\)
第n行的m個數可表示為 \(c^_\),即為從n-1個不同元素中取m-1個元素的組合數。所以結果即為\(c^_*a^n*b^m\)所求答案為楊輝三角第k+1行、第k-n+1列的值乘上\(a^nb^m\)
算就完了
別忘了取模
漢諾塔
題目描述:我其實是直接套公式做的......就\(2^n-1\)漢諾塔由編號為1到n大小不同的圓盤和三根柱子a,b,c組成。開始時,這n個圓盤由大到小依次套在a柱上,如圖所示。
要求把a柱上n個圓盤按下述規則移到c柱上:
(1)一次只能移乙個圓盤,它必須位於某個柱子的頂部;
(2)圓盤只能在三個柱上存放;
(3)任何時刻不允許**壓小盤。將這n個盤子從a柱移動到c柱上,最少需要移動多少次?
輸入格式:第一行輸入乙個正整數n\((1<=n<=30)\),表示圓盤的數量。
輸出格式:輸出乙個數表示最少需要移動的次數。
樣例輸入:3
樣例輸出:7
這個公式的來歷:
因為每次操作的函式裡面都有三個操作:①從原柱移到過渡柱上②將底盤移到目標柱③從過渡柱移到目標柱
其中第①步與第③步都可以進一步轉化為\(n-1\)個盤的問題,第②步恒為1步
因此就得到了\(t(n)=t(n−1)∗2+1\)
即\(t(n)=2^n-1\)
骨牌覆蓋
題目描述:1*2的只有一種有2行n列的長方形方格,要求用n個1*2的骨牌鋪滿。有多少種鋪法?
如n=3時有3種覆蓋方法
輸入格式:第一行輸入乙個正整數n(1<=n<=50)
輸出格式:輸出乙個整數表示方案數。
樣例輸入:3
樣例輸出:3
2*2的有兩種
3*2的有三種(相當於拆成1*2與2*2兩部分,求和)
4*2的有五種
……所以我們很容易得出結論:這是乙個斐波那契數列
再看一眼資料範圍,很好不用高精度
(注意這裡是從1,1開始的而不是從0,1,1開始)
20151006模擬賽總結
今天上午去一中,又考了個模擬賽。這次的題有點考思維。我感覺這個第一題難度稍微大了點。一般noip第一題要麼是簡單的模擬,要麼是裸的簡單演算法,這次的第一題要自己構造演算法,並且還是列舉和貪心套在一起。我開始想的是列舉 揹包,複雜度為n 3,但是資料範圍沒給出三次方的分。於是我就覺得不靠譜。然後發現列...
20151031模擬賽總結
今天去一中,考了個模擬賽,真是坑。本來在八中食堂愉快的享受我的早飯 週末早上的番茄雞蛋燙飯 韭菜肉餅簡直爽!然後geng4512就跑過來說要去一中考試,然後兩口喝完燙飯就和他一起狂跑過去了。這次第一題組合數取模,模的不是質數。想了好大半天,沒什麼想法,然後看了下後面的題,又回來做這道題,想起了階乘分...
20160521模擬賽總結
20160521模擬賽是程式設計實習課程安排的第一次模擬賽 比賽鏈結 備註 這個系列模擬賽屬於程式設計實習練習賽,題目有很大一部分事先練習過,做這些題目為了練習碼 熟練度,也為了進行模擬考試練習的機會,所以這個系列模擬賽我每一次都參加,作為練習 題目清單見下 已解決 01 浮點數求高精度冪 已解決 ...