時間限制:
1000 ms | 記憶體限制:
65535 kb
難度:2 描述
大家都知道ac_mm比較喜歡玩遊戲,特別是擅長war3這款經典遊戲。某天ac_mm來到了vs平台上 ,準備去虐菜鳥,正巧乙個不小心將我們acm隊長虐了 ^_^,我們的隊長這下可不高興了,說要出一道難題讓ac_mm難堪一下。題目描述是這樣的,給乙個正整數n,n在二進位制表示的情況下(不含前導0和符號位)有a個1和b個0,求斐波拉契數列的第a*b項對1314520取模後的值ans。
注意(斐波拉契數列: f[0]=1,f[1]=1; f[n]=f[n-1]+f[n-2] ; n>=2;)
輸入
輸入:有多組測試資料,輸入乙個正整數n(n<1000000000);
輸出輸出:ans的值
樣例輸入
126
樣例輸出
52
剛開始把問題想複雜了,估算一下,發現a*b的值能達到200+,然後甚至想到大數處理,打算寫個大數斐波拉切的時候,突然發現,原來是取模的,額,這下好了,直接同餘定理進行模運算就行,問題一下變簡單了很多倍!由此感想,做題要好好看題,拓展一下思路,說不定就有意外的發現了!
哈哈...直接打表水過...
#includelong long x[255];//保險起見開到 64 位
void db()
}int main()
else
n>>=1;
} printf("%lld\n",x[a*b]);//輸出對應結果
} return 0;
}
5 27程式分層
什麼事mvc模式就是按照程式的功能將他們分成三層,分別是model層 模型層 view層 顯示層 controller層 控制層 分層的直接體現是將不同功能的 儲存到不同的包中。modle層又可以細分為兩層,分別是dao層,service層,這兩層的主要功能 1.service層 主要負責一些業務處...
5 27模擬題 擷取
給你n段線的長度,現在要你從他們上面切下k段來 切下的不能合併 使得這k段長度相等,並且最大。如若求出的答案小於0.01,則認為無解,輸出0.00。所有非整數都精確到了兩位,輸出亦然 1 n,k 10000 每條線段的長度都是在1到100000之間的實數 二分查詢,一般用於最小值的最大值,最大值的最...
5 27 考試修改 總結
這是乙個悲傷的故事 上午寫manacher的時候往裡面加 號,然後統計有效字元的個數 然後我就開始模擬,乙個長度為6的串我都能數錯有多少個有效字元 我把2個字元數成了3個!然後暴力就掛掉了5分。為什麼這幾天的暴力總是會掛掉,真是奇怪 看來是最近自己內心不太穩了 大概是被那個夢嚇得吧qaq 今天又a了...