原创 hdu-4333

大致題意:給一個字符串,然後不斷得把第一位的字符放到最後一位構成新的字符串,判斷可以構成的字符串中有多少種不同的字符串比原字符串小、相等或者大。很基本的思路就是把字符串擴長,由字符串S變成SS,然後跑exkmp,用exkmp處理出SS的每

原创 洛谷P2574——XOR的藝術

就不說題意了,畢竟中文的簡單題意,很顯然的線段樹,用 lazy數組去維護一下區間被修改多少次,每次區間被修改,區間中1的個數就變成區間長度減去原來區間中1的個數,然後就能解決這道題了。 感覺洛谷評分有問題,這明明是道很簡單的題,爲什麼這能

原创 2019ICPC上海網絡賽——G.substring

大致題意:給一個主串S,再給Q個字符串str,判斷每個str在Q中的出現次數,這裏的str出現的條件是:只要求最前面和最後面的字符必須與S中相同,中間的字符可以打亂順序。比如abcbd 和abbcd可以看成是相同的。 很明顯的哈希,最樸素

原创 Codeforces——949B. A Leapfrog in the Array.

949B 看到這個數據範圍,我的第一想法是找找規律,看看最後的排列和n有沒有什麼關係。 果不其然,有規律: 奇數位置loc的值就是 (loc+1)/2。 偶數呢??如果忽略奇數位置的值,只看偶數位置的排列。 如果n爲奇數(1、3除外):

原创 AtCoder Contest 156 E - Roaming

第一次覺得自己組合數學還可以,也可能是題目太明顯了 大致題意:有n個房間,每個房間裏面都有1個人,然後發生了k次移動,問現在可能的情況有多少。 先思考,在k次移動後,可能會出現多少個房間的人數爲0,很顯然,房間人數爲0的房間個數的取值範圍

原创 遇事不決,可問春風。判斷素數?Miller_Rabin :)

Miller_Rabin:讀作米勒羅賓。知道這個名字是學習這個算法的唯一難點。 在某些文章裏看到過,說是人類目前大部分信息加密,都是基於大數分解。沒學過密碼學,大概猜測一下可能是根據唯一分解定理,把數分解成質數之乘(比如 10=2*5,2

原创 HDU-2196-Computer 樹形DP

大致題意:每一臺電腦和某些電腦相連,所有電腦構成了一顆樹。現在,需要求每臺電腦傳送信息的最大距離,也就是到達葉子節點的最大距離。很經典的一道樹形DP,大致思路:任選一個節點作爲根節點,然後用DFS跑出每個節點向下的最大距離和次大距離。然後

原创 2019HDU多校集訓——string matching

題目大意:給一個字符串s,計算從下標1開始一直到字符串末的子串 與 原串s的最長公共前綴lcp(如果子串的長度與lcp不相同,則需要額外的+1)。exkmp的板子題,很無聊。 #include<bits/stdc++.h> using

原创 2019HDU多校集訓——Minimal Power of Prime

題目大意,輸出一個數n的質因數的最小次冪。想到了先篩出小部分的質因數,後面又想到了開方之類的操作,但是腦子不正常,把開方這裏想歪了。。。。。。感覺最近狀態太差了,有時候想題的時候像個憨憨一樣。好像以前也有這種情況出現過,然後多睡覺就好了?

原创 Codeforces 1272E——E. Nearest Opposite Parity

1272E 題意:給一個數組arr,然後對於數組中1到n的位置pos,都可以跳向pos+arr[pos] 和pos-arr[pos],現在問題是:每一個位置跳向和它奇偶性相反的位置,最少需要幾步。無法跳到則輸出-1。 簡單分析看題解分析:

原创 矩陣快速冪——入門篇

矩陣入門: 一、矩陣乘法(很簡單,自行了解) 二、矩陣性質:矩陣沒有交換律、但是矩陣有結合律   結合律:現有矩陣A、B、C。         (A*B)*C=A*(B*C)。   進入正題: 斐波拉契數列:1、1、2、3、5、8、13、

原创 震驚,全中國有十億人都不知道它————笛卡爾樹(Cartesian_tree)

笛卡爾樹 學習笛卡爾樹的完整步驟: 1.打開音樂播放器,播放《你是人間四月天》 2.看完這篇博客   笛卡爾樹:笛卡爾樹是帶有一些特殊性質的樹形結構,好像說了和沒有說一樣。 性質:笛卡爾樹中有這樣的二元組(key,value)。 其中ke

原创 中國剩餘定理=.=

中國剩餘定理(孫子定理) 前置知識:逆元,取模運算。 先說說這個定理可以幹什麼吧。 例題:設一個非負整數X,X%3的值爲2,X%5的值爲3,X%7的值爲6。那麼X的值是多少?? 即 %3 %5 %7 計算: 1.先求出3,5,7的公倍數M

原创 bzoj——4260

大致題意:給一個數組,找出這個數組的兩個不相交區間的值 的最大和,區間的值是區間中的值的異或和。說得很奇怪,實在不清楚就耐心看題目中的公式。 大致思路:想辦法得到每個位置 前面的 最大 連續區間異或值,和 後面的 最大 連續區間異或值。怎