原创 Contest1176 - 20180608限時練習

總結:開始理解錯了題目的意思,所以花了時間卻沒有打出來,先做了C; 然後B題有思路,打完之後沒有調出來,就換回A題,做出來了以後,再做B題主要還是pow的問題,後來再主攻D;D的想法很多,開始想了單調隊列,不過打不出來;後來分治就通了。

原创 Contest1175 - 20180607限時練習

P1603 A 度熊的全排列名字 簡析:這題就是一道特殊字符串的比較題,由於全排列之後的字符經過排序之後都是相同的,所以可以用map來存儲進行比較; #include<bits/stdc++.h> using namespace

原创 UVA10590 Boxes of Chocolates Again

由於UVA不太穩定,所以之後好帖了vj 分析 這題是dp+高精度;方程適合用刷表法;dp[j]=dp[j]+dp[j-i]; 不過由於答案過大,所以要寫BigInt 於此保存這個令人驚悚的代碼(參考劉汝佳的紫書) 代碼 #inclu

原创 luo's oj P1731數列

題目鏈接 /* 假設x>y f(x,y)=f(y,x); f(1,x)=x+1; 由a1=x,a2=y,a3=x-y;而x>y且x-y!=y,delta恆小於x 得f(x,y)=f(y,x-y)+1=

原创 luooj最強陣容加強版

傳送門 分析 模板題;運用到最小表示法具體實現見代碼,網上的題解也很多 #include<bits/stdc++.h> using namespace std; char s[1000005]; int MINSTR(){ int

原创 BZOJ2454兔子跳躍之謎下(BZOJ中不是多組數據)

題目鏈接 分析 把A B C三點視爲一個狀態;首先我們約定從中間一個點向外跳是狀態的兒子,從左邊或右邊顯然只有一種跳法,於是作爲父親,根據最大步數來建樹(於是有了一棵二叉樹),當然我們只需要選取有用的點,之後就剩下找根的操作(根是什麼呢,

原创 luooj公共前後綴長度(presuf)

題目鏈接 分析 首先這是一道KMP的應用題,這已經是我第二次學KMP了這一次先學了沒有什麼用的優化QAQ根據KMP的算法匹配串的後綴==模式串的前綴 so 可以推得 對於串S,根據f[strlen(S)]得到的最長相同前後綴爲S1

原创 luo's oj P1733 三角形

題目鏈接 一個修改操作對一個查詢操作的影響可以O(1)算。每次修改維護一個差分數 組,每一次複雜度 O(n)。 然後,每k次修改操作以後就重構整個三角形。 這樣每次詢問的話對於單個修改操作的查詢用時就是 K。 然後每次重構時通過

原创 競賽同行dp優化總結

“由於這幾道題目有很大的共同點,就放在一起解析” P1576 此題就是先推出暴力的dp,首先就要想到+1和-1其實是一件事,就是求差值 a[]表示原序列b[]表示排序後的序列 f[i][j]表示把前i個數變成非降序列,並且第i個數