連續不知道多少場了,都是一場10名以內一場20以外。。。波動極大。。。還極有規律。。。
拿到這套題,看到t1大模擬無話可說。
然後考場上我覺得t2很簡單。。。。然後就碼了兩個半小時。
t3資料水了暴力70。。。
t1:磚塊
大模擬。其實也不大。。。
記錄上下左右前後邊界然後滾就是了
閒得慌打hash_map
1 #include2 #include3view codeusing
namespace
std;
4#define p(a,b) make_pair(a,b)
5struct
hash_map
13void clear()
14}m;
15int mxt,u,l,r,f,b;char s[105
];16
void
n_turn()20}
21void
s_turn()25}
26void
w_turn()30}
31void
e_turn()35}
36int main()
49 }
t2:數字
比較神仙。
高精還是要打的,但是只需要讀入,除2和5的倍數的低精數,模同理,以及大於號。。。
模的話直接取最低位返回就行。。。emm我是萬進製的
設ext(a,b)是b除去所有因子a後剩下的數,那麼題目就是求ext(10,n!)%10k
直覺,可以crt。分成2和5處理。
絕大多數情況下因子2都嚴格比5多,所以ext(10,n!)%2==0
現在只需要求出ext(5,n!)%10k
那麼分解1000就是8×125。對於8其因子數也很多所以最後乘逆元。
問題就變成求ext mod125的答案了。
可以把階乘裡能整除5的和不能的分開考慮,而能被整除的部分就是ext(5,(n/5)!),遞迴處理。
可以發現ext之後階乘操作其實是迴圈的,因為mod125所以每125位就迴圈了。
迴圈的部分可以快速冪處理。剩餘部分可以預處理。
我知道這作為乙個題解過於草率,沒時間了溜了。
1 #include2 #include3 #include4view codeusing
namespace
std;
5char s[105];int l,k;const
int mod[4]=,m5[4]=;int fac[133],fac[133];6
struct
bigint
13void
operator/=(int
k)17
intoperator%(int k)
18bool
operator>(int k)
19}n,m;
20int pow(int b,int t,int mod,int a=1)
21int
ext(bigint n)
26void put(int x,int k)
27int main()
29int ans,t,tot;scanf("
%d",&t);
30while(t--)
35 m=n;tot=0;36
while(m.ws)m/=5,(tot+=m%100)%=100
;37 ans*=pow(63,tot,125);ans%=125;38
for(int i=0;i<1000;i+=8)if(i%125==ans)put(i,k);39}
40 }
t3:甜圈
考察的思路很不錯啊。
因為不能多不能少不能亂序,所以很符合字串的性質。
因為要區間操作,所以方便快捷的hash。
那麼就變成了區間加區間乘的線段樹啦!
(居然還有人不會線段樹板子%%%)
1 #include2view codeint cl[800005],cr[800005
],ans;
3 unsigned long
long hsh[800005],lzm[800005],lza[800005
],hsh;
4void build(int p,int l,intr)9
void down(int
p)17
void chg(int p,int l,int r,int
w)19
if(lza[p]||lzm[p]!=1
)down(p);
20if(l<=cr[p<<1])chg(p<<1
,l,r,w);
21if(r>=cl[p<<1|1])chg(p<<1|1
,l,r,w);22}
23void ask(int
p)25
if(lza[p]||lzm[p]!=1
)down(p);
26 ask(p<<1);ask(p<<1|1
);27}28
intmain()
考試反思 1005csp s模擬測試60 招魂
最近總是好一場爛一場的。沒有連續兩場排名波動小於20的。沒人管。反正大臉一點臉沒有就又ak了。但是t3爆零這種事情吧。爆搜不是很難打,但是想優化想了半天剩的時間不夠結果趕忙打出來了,然後就掛了。合理安排時間,要把碼暴力的時間也考慮到,要檢查。t1t2仍然掛上了對拍,所以沒有全盤 總體來說是相對簡單的...
考試反思 1114csp s模擬測試115 零遲
最後一次了,允許自己混進榜裡吧。沒有心態,原題不會做 真的忘了 t2的搜尋沒有分。零 遲 酷刑 只有在最後的時刻才開始意識到,一切的一切都已經晚了。就在眼前了。沒有機會了。退役,告別oi,粉碎夢想,這,就是最嚴苛的酷刑。生存,生存!hzoi2018!所有人!一年走來,我們還要繼續走下去!csp s,...
考試反思 1112csp s模擬測試111 二重
還是ak場。考前信心賽?而且t3的部分分還放反了所有80的都其實只有50。總算在ak場真正ak了一次。手感好,整場考試很順利。要不是因為t3是原題可能就沒這麼好看了。20mint1,50mint2,去趟廁所回來70min想到t3,110min寫完調完對拍完,然後去學skyh寫平衡樹了。然後我發現我不...