• 2024-07-02P6754 [BalticOI 2013 Day1] Palindrome-Free Numbers
    数据范围一眼数位dp。关键条件为如果一个数字串的一个长度大于 11 的子串也为回文串的话,那么我们也定义这个数字串为回文串。仔细思考发现一旦两个连续的数相同(偶回文)或两个数隔一个数相同(奇回文)都是回文,所以要保证连续三个数不相同,记录前两位即可。注意事项:1.前导零不应为0
  • 2024-06-16[AGC001D] Arrays and Palindrome
    题意有长度为\(n\)的字符串\(S\),与\(a,b\)两个序列。满足\(\suma_i=n,\sumb_i=n\)。若满足\(S\)的以下子段都为回文串:最前面的\(a_1\)个字符,以及紧接着的\(a_2\)个字符...最前面的\(b_1\)个字符,以及紧接着的\(b_2\)个字符...则\(S\)的所有字符
  • 2024-06-11LeetCode 409 Longest Palindrome All In One
    LeetCode409LongestPalindromeAllInOneLeetCode409最长回文算法题解Solutions//MapfunctionlongestPalindrome(s:string):number{constmap=newMap();letlen=0;for(leti=0;i<s.length;i++){if(map.has(s[i])){//配对,消元
  • 2024-04-20ABC 286 C - Rotate and Palindrome
    题目链接:注意到“您可以按任意顺序执行以下两种运算零次或多次”。因此,解决这个问题的一个重要观察点是,你可以假设\(A\)操作执行了几次,然后\(B\)操作执行了几次。你也可以假设\(A\)操作最多被执行\(N\)次(因为执行\(N\)次就会使它处于原始状态)有了这个观察结果,你就
  • 2024-03-27LeetCode-9 Palindrome Number
    9.PalindromeNumber easyGivenaninteger x,return true if x isa palindrome ,and false otherwise. Example1:Input:x=121Output:trueExplanation:121readsas121fromlefttorightandfromrighttoleft.Example2:Input:x=-
  • 2024-03-05AT_abc331_f [ABC331F] Palindrome Query 题解
    分析线段树。每个节点维护两个值:$s[l\dotsr]$和$s[r\dotsl]$。判断字串是否是回文直接就是询问的答案维护出来的两个值是否相同。首先想到用线段树暴力维护。第一个值很显然是两个儿子的第一个值加起来,第二个值是反着加起来。得到很酷的代码:ilvoidup(intnow){ tr[now
  • 2024-03-01CF1827C Palindrome Partition 题解
    CF1827CPalindromePartition题解题面题目传送门。称一个字符串是好的,当且仅当它是一个长度为偶数的回文串或由若干长度为偶数的回文串拼接而成。给定一个长度为\(n\)的字符串\(s\),求有多少\(s\)的子串是好的。$1\len\le5\cdot10^5$,\(s\)仅包含小写字母。
  • 2024-02-23A smart way to invert a number
    /*Thisismyhomeworktodaytojudgeanumberwhetherit'sapalindrome//Mostofususearraytosolvetheproblem,butIfindawaydonotneedanarray.*/include<stdio.h>intmain(intargc,constchar*argv[]){intx,m,n=0;printf(&quo
  • 2024-02-19USACO 2024 February Contest, Bronze Problem 1. Palindrome Game
    1.猜结论2.证明如果\(s<=9\)则\(Bessie\)必赢。如果\(s=10\)则\(Elsie\)必赢。如果\(10<s<=19\)则\(Bessie\)可以减去\(s-10\),使自己必赢。如果\(s=20\)则\(Bessie\)无论如何减去一个回文数都会离\(10\)差一个个位数,\(Elsie\)减去这个个位
  • 2024-01-07[ABC331F] Palindrome Query 题解
    思路判断一个字符串是否是回文串,可以从它的本质出发:正着读和倒着读是一样的。快速判断它正着和反着是否一样,用字符串哈希即可。又因为涉及单点修改,区间查询,那么使用线段树维护这两个值就行了。这里讲一下如何pushup。以正着的哈希值为例:我们要更新\(p\)这个点的\(hash\)值,
  • 2023-12-25『LeetCode』9. 回文数 Palindrome Number
    题目描述给你一个整数x,如果x是一个回文整数,返回true;否则,返回false。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121是回文,而123不是。示例1:输入:x=121输出:true示例2:输入:x=-121输出:false解释:从左向右读,为-121。从右向左读,为121-。因此
  • 2023-12-03F - Palindrome Query
    F-PalindromeQueryProblemStatementYouaregivenastring$S$oflength$N$consistingoflowercaseEnglishletters.Process$Q$queriesdescribedbelowintheordertheyaregiven.Therearetwotypesofqueries:1xc:Changethe$x$-thcharactero
  • 2023-12-03ABC 331 F - Palindrome Query(字符串哈希,树状数组)
    字符串哈希[OI-Wiki](字符串哈希-OIWiki(oi-wiki.org))分为两种哈希方式:以左为高位和以右为高位如果只是快速查询每个字串的哈希值,用以左为高位比较简单,即\[Hash[l...r]=Hash[1...r]-Hash[1...(l-1)]\timesbase^{r-l+1}\]但是如果有修改操作,需要将每一位的Hash值存
  • 2023-11-29CF1827C Palindrome Partition 题解
    题目链接点击打开链接题目解法首先考虑一个朴素的\(dp\)令\(f_i\)表示以\(i\)结尾的合法子串的个数为了不重不漏,我们令\(le_i\)表示以\(i\)为右端点,离\(i\)最近的偶回文串的左端点,然后不难得到转移为\(f_i=f_{le_i-1}+1\)为什么不会漏?考虑以\(i\)为右端点,且比
  • 2023-11-14Palindrome-less Arrays
    here哥们不会组合数学。首先类似这题,得出没有回文串的充要条件是没有长度为3的回文串。长度为3的回文串,\(a_i,a_{i+1},a_{i+2}\),只要满足\(a_i\neqa_{i+2}\)即可,也就是说奇数位、偶数位抠出来,新数组中相邻的数不相同。考虑dp,一种显然的dp是设\(f_{i,j}\)为\([1,
  • 2023-09-282023 ICPC 网络赛2 L Super-palindrome 字符串 border KMP dp
    传送门给出一个\(5000\)长的字符串判断有多少个连续子串是超级回文的。这里超级回文的定义是将字符串分成\(2k\)段每段按照回文对应相等。设\(f_{l,r}\)表示区间\(l,r\)是否是符合要求的。引入\(border\)的定义:最长的前缀和后缀匹配长度。容易想到我们如果暴力枚举每个区间来
  • 2023-09-121136 A Delayed Palindrome
    题目:Considerapositiveinteger N writteninstandardnotationwith k+1 digits ai​ as ak​⋯a1​a0​ with 0≤ai​<10 forall i and ak​>0.Then N is palindromic ifandonlyif ai​=ak−i​ forall i.Zeroiswritten0andisalsopalindr
  • 2023-08-23CF1335E1 Three Blocks Palindrome (easy version)
    思路发现一个进阶回文序列仅包含三个部分:\(x\)个连续的\(a\),\(y\)个连续的\(b\),\(x\)个连续的\(a\)。对于一个\(a\),我们一定会取最外面的两个\(a\),如果不取,则答案一定不小或不变,所以我们枚举到\(a\)的时候,一定是确定了最外围的两个\(a\)的位置。接下来再枚举\(x\)
  • 2023-08-12string reversal
    stringreservalpythondefreverse_string(s):returns[::-1]print(reverse_string("Hello,World!"))#Output:"!dlroW,olleH"print(reverse_string("Pythonisawesome"))#Output:"emosewasinohtyP"shell#!
  • 2023-08-08【刷题笔记】9. Palindrome Number
    题目Determinewhetheranintegerisapalindrome.Aninteger is a palindromewhenit readsthesamebackwardasforward.Example1:Input:121Output:trueExample2:Input:-121Output:falseExplanation:Fromlefttoright,itreads-121.Fromrightto
  • 2023-07-23显示前100个回文素数python
    回文素数的科普1.什么是回文数?回文数是指从左到右和从右到左读起来都一样的数。比如,121、12321等都是回文数。2.什么是素数?素数是指大于1且只能被1和自身整除的数。比如,2、3、5、7等都是素数。3.什么是回文素数?回文素数是同时满足回文数和素数的数。比如,131、373等都是回
  • 2023-06-15「解题报告」CF1738H Palindrome Addicts
    神秘回文串题。首先容易发现要求的是区间本质不同回文串个数,所以直接上论文做法即可。容易想到增量构建回文自动机,假如现在建出了\([1,r]\)的PAM,考虑有多少回文串出现在了\([l,r]\)内。考虑记录每个回文串的最后一次出现位置\(last_p\),那么这个串的左端点就是\(last_p
  • 2023-06-12Palindrome Number
    Givenanintegerx,returntrueifxisapalindrome,andfalseotherwise.Example1:Input:x=121Output:trueExplanation:121readsas121fromlefttorightandfromrighttoleft.Example2:Input:x=-121Output:falseExplanation:Fromleftto
  • 2023-05-30leetcode 409. Longest Palindrome
    Givenastringwhichconsistsoflowercaseoruppercaseletters,findthelengthofthelongestpalindromesthatcanbebuiltwiththoseletters.Thisiscasesensitive,forexample"Aa"isnotconsideredapalindromehere.Note:Assumethelength
  • 2023-05-19CF1512C A-B Palindrome 题解
    CF1512CA-BPalindrome题解Link洛谷CodeforcesDescription给出\(T\)个只由0、1和?组成的字符串\(s\),将字符串中的?替换成0或1之后形成一个回文串并且恰好有\(a\)个0和\(b\)个1,无解输出-1。Solution首先,若不考虑?原串不为回文串一定无解,输出-1即