Codeforces Round #265 (Div. 1)
2014-12-10 22:51
671 查看
A No to Palindromes!
题意:给一个长度为n的用前m个字符构成的字符串,定义一个字符串是好的当且仅当他的每个子串都不是回文的,现在给出一个好的字符串,求比他字典序大的第一个好的字符串。
题解:从后往前每一位枚举,若把当前枚举的位改成ch后为好的串,只需要判断他和他前面的一个字符是否相同构成长度为2的回文串,或者和他前面的前面的两个字符构成长度为3的回文串。
于是找到第一个可以换的位置,后面每个位置从'a'开始枚举可以取得的第一个字符即可。
View Code
题意:给一个长度为n的用前m个字符构成的字符串,定义一个字符串是好的当且仅当他的每个子串都不是回文的,现在给出一个好的字符串,求比他字典序大的第一个好的字符串。
题解:从后往前每一位枚举,若把当前枚举的位改成ch后为好的串,只需要判断他和他前面的一个字符是否相同构成长度为2的回文串,或者和他前面的前面的两个字符构成长度为3的回文串。
于是找到第一个可以换的位置,后面每个位置从'a'开始枚举可以取得的第一个字符即可。
#include <cstdio> #include <cmath> #include <cstring> #include <iostream> #include <algorithm> typedef long long LL; using namespace std; const int mod=1e9+7; string s,q[200000]; LL add[20],shift[20]; int n; int main() { cin>>s; cin>>n; for (int i=0;i<10;++i) { add[i]=i; shift[i]=10; } for (int i=0;i<n;++i) cin>>q[i]; for (int i=n-1;i>=0;--i) { LL dqa=0,dqs=1; for (int j=q[i].size()-1;j>=3;--j) { dqa=(dqa+add[q[i][j]-'0']*dqs)%mod; dqs=(shift[q[i][j]-'0']*dqs)%mod; } int x=q[i][0]-'0'; add[x]=dqa; shift[x]=dqs; } LL ans=0; for (int i=0;i<s.size();++i) ans=(ans*shift[s[i]-'0']+add[s[i]-'0'])%mod; cout<<ans<<endl; return 0; }
View Code
相关文章推荐
- Codeforces Round #265 (Div. 2) E. Substitutes in Number
- Codeforces Round #265 (Div. 2)D(判断立方体)
- Codeforces Round #265 (Div. 2)
- Codeforces Round #265 (Div. 2) A. inc ARG
- Codeforces Round #265 (Div. 2)E(数位dp)
- Codeforces Round #265 (Div. 2) C. No to Palindromes!
- Codeforces Round #265 (Div. 2) B. Inbox (100500)
- Codeforces Round #265 (Div. 2) 题解
- Codeforces Round #265 (Div. 2) 465A. inc ARG(数学题)
- Codeforces Round #265 (Div. 2) C 暴力+ 找规律+ 贪心
- Codeforces Round #265 (Div. 2) C. No to Palindromes! 构建无回文串子
- Codeforces Round #265 (Div. 2) C.No to Palindromes!
- Codeforces Round #265 (Div. 2) B. Inbox (100500)(模拟)
- Codeforces Round #265 (Div. 2)E. Substitutes in Number(数学)
- Codeforces Round #265 (Div. 2)-C. No to Palindromes!
- Codeforces Round #265 (Div. 2) C
- Codeforces Round #265 (Div. 1) A
- Codeforces Round #265 (Div. 2)
- Codeforces Round #265 (Div. 2) C. No to Palindromes! 构造不含回文子串的串
- Codeforces Round #265(div2)题解