NOIP2012普及組 尋寶

2022-05-16 02:49:56 字數 898 閱讀 7822

這道實際難度入門的題做得真™要麻煩死我,由於摸不到電腦,在大腦裡調了3天都翻不轉!!

p1076 尋寶

思路:暴力模擬(這是基礎,單純暴力據說會全部tle)+取模優化(這樣時間複雜度驟降到o(nm))。

ac**:

#includeusing

namespace

std;

long

long n,m,t,a[10005][105],able[10005

],start,ans,p;

bool sign[10005][105

];int

main()

scanf(

"%lld

",&start);

long

long j=start;

for(long

long i=1; i<=n; i++)

start=j;

}ans=ans%20123

; printf(

"%lld

",ans);

return0;

}

真™不容易

核心優化:

p=a[i][start]%able[i];
用start表示某一層樓的起點房間編號,able表示某一層具有樓梯的房間的數量,這句優化能夠mod運算大大降低時間複雜度,比如:

某層樓有3個具有樓梯的房間,然而start房間的木牌上x=10000,暴力模擬需要走10000次,然而10000%3=1,走1次就可以了。

其實優化不是重點

關鍵是調對用於模擬的迴圈!

while(1

)

別忘了開long long

ac**第一次提交拿了20分因為沒看見答案要%20123

NOIP2012普及組T2 尋寶

傳說很遙遠的藏寶樓頂層藏著誘人的寶藏。小明歷盡千辛萬苦終於找到傳說中的這個藏寶樓,藏寶樓的門口豎著乙個木板,上面寫有幾個大字 尋寶說明書。說明書的內容如下 藏寶樓共有 n 1 層,最上面一層是頂層,頂層有乙個房間裡面藏著寶藏。除了頂層外,藏寶樓另有 n 層,每層 m 個房間,這 m 個房間圍成一圈並...

Noip2012普及組 擺花

小明的花店新開張,為了吸引顧客,他想在花店的門口擺上一排花,共 m 盆。通過調查顧客的喜好,小明列出了 顧客最喜歡的 n 種花,從 1 到 n 標號。為了在門口展出更多種花,規定第 i 種花不能超過 ai盆,擺花時同一 種花放在一起,且不同種類的花需按標號的從小到大的順序依次擺列。試程式設計計算,一...

noip2012普及組 擺花

小明的花店新開張,為了吸引顧客,他想在花店的門口擺上一排花,共m盆。通過調查顧客的喜好,小明列出了顧客最喜歡的n種花,從1到n標號。為了在門口展出更多種花,規定第i種花不能超過ai盆,擺花時同一種花放在一起,且不同種類的花需按標號的從小到大的順序依次擺列。試程式設計計算,一共有多少種不同的擺花方案。...