Winnie the Pooh URAL 1561 解題報告

2022-05-26 18:18:04 字數 2097 閱讀 2128

winnie the pooh 解題報告

中山一中馮齊緯題目描述

小熊維尼很喜歡蜂蜜。但是大千世界上有很多種蜂蜜。維尼吃一罐蜂蜜需要若干整天。兩罐同種的蜂蜜吃起來所花的時間是一樣的。然後小熊的問題就是要你應付下面一些事件:

一、發現新蜂蜜!姑且暫時給它乙個編號。所有種類蜂蜜按出現時間編號依次為1,2,…

二、維尼說,說他吃a1罐第1類的蜂蜜,吃a2罐第二類的蜂蜜,…,吃a k 罐第k類的蜂蜜(假設現在知道的蜂蜜有k種吧),要從星期s到星期e…

三、維尼計畫吃a1罐第1類的蜂蜜,吃a2罐第二類的蜂蜜,…,吃a k罐第k類的蜂蜜,現在是星期s,那麼他要吃到星期幾呢?

輸入第一行為事件數,接著每個事件表述為:

add,或

learn a0a1a2…a k s e,或

eat a0a1a2…a k s。

對每個eat詢問輸出一行,表示維尼要吃到星期幾。如果不確定則輸出don』t know,如果前面維尼說的話已經矛盾了則輸出already crazy。

樣例如下:

題目**

timus online judge, problem 1561, winnie the pooh

分析設吃第i類蜂蜜要x i天,對每個learn操作,相當於是增加了乙個方程:a1x1+a2x2+…+a k x k=b (mod 7)

不同於一般方程組的是,本題中所考慮的所有方程組均是在模7意義上的。

那麼,需要支援的操作就是:

1)新建乙個未知數

2)插入乙個方程

3)求乙個一次多項式的值

如果直接模擬,不難得出這樣乙個演算法:

1)對新建未知數操作,直接完成

2)對插入方程操作,直接完成

3)求乙個多項式的值時,首先列舉它的值,接著將該多項式連同列舉的

值作為乙個方程加入,嘗試高斯消元,如果存在解則表示當前列舉的

值合法。最後,通過解的數目回答問題。

但是該實現方法的第三個操作的時間複雜度是o(n3),無法承受。

事實上,我們每一次都進行高斯消元,其中的浪費是相當大的。設當前有m 個方程,且當前方程組為:

a11x1+a12x2+…+a1k x k = b1 (mod 7)

a21x1+a22x2+…+a2k x k = b2 (mod 7)

a31x1+a32x2+…+a3k x k = b3 (mod 7)

…a m1x1+a m2x2+…+a mk x k =

b m (mod 7)

若當前方程組已經是經過高斯消元的,即對j這樣,每一次learn操作可在o(n2)的時間內完成。

再考慮到詢問操作。可以先列舉答案,然後按相同的方法試圖消元求解,判斷可行性。但是這樣的代價太高,我們試圖優化冗餘運算。

還是從直接列舉上尋找突破口。假設當前列舉的答案是p,那麼新的方程是a1x1+a2x2+…+a k x k=p (mod 7)

然後,考慮每次消元。設用來消新建方程第乙個非0係數項是i,該方程為

a ii x i+…+a ik x k =

b i則消元時,新方程變為:

(a1*a ii)x1+(a2*a ii)x2+…+(a i*a ii-a ii*a i)x i+…+(a k*a ii-a ik*a i)x k=p*a ii-b i*a i 可以發現,消元過程後x的係數與p值無關,而常數項(等式右邊)最終結果必能表示為ap+b的形式。在判斷可行性時,我們可以姑且設出初始的p值,消元過後得到a和b,這時如果仍有非0係數項則必然有多解,否則,再列舉[0,6]中的值尋找滿足ap+b的p,如果存在多個則詢問有多解,如果存在乙個則有唯一解,如果不存在則無解。

該操作同樣經歷了對乙個方程的消元過程,時間複雜度仍然是o(n2)。消元只會改變當前方程,之前的方程組內容不發生變化。

問題至此已經基本解決。雖然演算法的時間複雜度為o(n3),但我們可以分析一下運算次數:

比起一次詢問,一次插入方程的操作會使程式整體執行時間更長,那不妨設有t次插入未知數操作,1000-t次插入方程的操作。則總運算次數

t = t+[t+2t+…+(1000-t)t] < (1000-t)2t ≤1

2(1000t+1000t+2t

3)3= 1.5*108

這個上限極難達到,並且由於問題的特殊性,演算法的實際執行效率還是很高的,能夠通過本題的官方測試。

156績效管理制度實施說明

一 考核原則 公開 透明 客觀 公正。二 考核過程溝通 本考核制度強調考評過程的雙向互動溝通,從雙方確立考核目標 過程督導 結果評核以及改進措施和新一輪考核目標的確立,均要求雙方的進行良好的互動溝通。確保各級員工明確工作目標與方向,並通過過程督導,有效達成組織目標。三 考核頻度 組長以下 月考核 組...

1 5 6樓過梁貼鋼板加固方案 改

公共走道橫樑貼鋼板加固方案 1 編制依據 1 建設單位提供的施工圖紙。2 現場實際情況 2 編制目的 因業主指令等原因,1 2 5 6 樓的合用前室部位的電梯井過梁上預埋的a50的套管全部不使用,套管的空洞對過梁增加了結構風險,為了加強電梯井過梁的抗剪能力,編制此方案作為施工指導及 的依據,該方案的...

156班班級德育工作計畫

一 指導思想 在學校黨政的正確領導下,堅持德育工作的主導地位,以努力提高班主任的工作能力為工作中心,以嚴抓學生日常行為規範的養成為工作重點,加強精神文明建設,為形成良好的學風 班風 校風打下堅實的基礎 為培養學生愛家 愛校 愛鄉 愛國,做乙個新時代的好學生 好孩子 好公民而努力工作。二 主要工作 一...