题目网页链接: http://codeforces.com/gym/101745/problem/D

思路:首先可以确保能够成功染色的字符串都是结果串的子串,那么O(n^2)枚举子串之后dp转移即可。

 #include<bits/stdc++.h>
 using namespace std;

 typedef long long ll;
 ;
 ;
 const int inf=0x3f3f3f3f;
 ;
 const double pi=acos(-1.0);
 #define mem(s,v) memset(s,v,sizeof(s))
 #define pdd pair<double,double>
 #define pii pair<int,int>

 string s,ss;
 set<string> se;
 ][];
 int n;

 int judge(string ss){
     ]!=s[]) ;
     memset(dp,,sizeof(dp));
     dp[][]=;
     int m=ss.size();
     ;i<n-;++i){
         ;j<m;++j){
             if(!dp[i][j]) continue;
             ]==ss[(j+)%m]) dp[i+][(j+)%m]=;
             ]==ss[]) dp[i+][]=;
         }
         ]){
             ;j<m;++j){
                 ]==ss[j]) dp[i+][j]=;
             }
         }
     }
     ][m-];
 }

 int main(){
     cin>>s;
     n=s.size();
     ;i<n-;++i){
         for(int j=i;j<n;++j){
             ss=s.substr(i,j-i+);
             if(judge(ss)) se.insert(ss);
         }
     }
     for(auto it : se){
         cout<<it<<endl;
     }
     ;
 }

Gym 101745 D.Stamp Stamp Stamp的更多相关文章

  1. JUC学习笔记--Atomic原子类

    J.U.C 框架学习顺序 http://blog.csdn.net/chen7253886/article/details/52769111 Atomic 原子操作类包 Atomic包 主要是在多线程 ...

  2. 1-7 basket.js localstorage.js缓存css、js

    basket.js 源码分析   api 使用文档: http://t3n.de/news/basketjs-performance-localstorage-515119/       一.前言 b ...

  3. PHP 水印设置

    一.图片水印 <?php /* 覆盖水印 */ $image = ImageCreateFromJPEG('memcached.jpg'); $stamp = ImageCreateFromPN ...

  4. 2014 UESTC暑前集训搜索专题解题报告

    A.解救小Q BFS.每次到达一个状态时看是否是在传送阵的一点上,是则传送到另一点即可. 代码: #include <iostream> #include <cstdio> # ...

  5. basket.js 源码分析

    basket.js 源码分析 一.前言 basket.js 可以用来加载js脚本并且保存到 LocalStorage 上,使我们可以更加精准地控制缓存,即使是在 http 缓存过期之后也可以使用.因此 ...

  6. 从数据库得到的结果集存放到List集合中

    一.业务阐述 在开发中查询的数据库结果集,既要连接数据库.执行数据库操作.关闭数据库,还要把结果集的记录人为的设置到自己封装的DAO中等一系列的重复代码. 本文主要是想解决:用户只需要得到数据库连接, ...

  7. USACO Section 3.1: Stamps

    这题一开始用了dfs(注释部分),结果TLE,后来想了DP方法,f[i] = f[j] + f[i-j], j = 1, 2... i/2, 还是TLE,网上搜了别人的代码,发现自己的状态方程有问题, ...

  8. 北大ACM(POJ1010-STAMPS)

    Question:http://poj.org/problem?id=1010问题点:DFS.剪枝. Memory: 220K Time: 32MS Language: C++ Result: Acc ...

  9. pdf增加水印

    /// <summary> /// 为PDF添加水印或背景图片 /// </summary> /// <param name="strSourceFilePat ...

随机推荐

  1. 算法笔记--区间dp

    1.石子归并问题 dp[i][j]表示区间i到j合并所需的最小花费. 先求出小区间的最小花费,再转移到大的区间. 转移方程:dp[i][j]=min(dp[i][j],dp[i][k]+dp[k+1] ...

  2. Python requests介绍之接口介绍

    Python requests介绍 引用官网介绍 Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. Requests 允许你发送纯天然,植物饲养的 HTTP/1. ...

  3. php 获取自己的公网IP

    <?php $externalContent = file_get_contents('http://checkip.dyndns.com/'); preg_match('/Current IP ...

  4. Silverlight自定义控件系列 – TreeView (4) 缩进

    接下来是缩进,没有缩进的Tree怎么看都不顺眼. 首先,定义节点深度Depth(注:回叫方法暂没有代码,以后要用到): 1: /// <summary> 2: /// Using a De ...

  5. codeforces 966c//Big Secret// Codeforces Round #477 (Div. 1)

    题意:一个数组,重新打乱后前缀异或和递增.问这样的排列. 将所有元素按照二进制最高位分组.每次选当前前缀和sum的二进制最低的0位,再从分组中挑一个作为答案.先放首1在较低位的再放首1在较高位的总是可 ...

  6. A Creative Cutout CodeForces - 933D (计数)

    大意:给定$n$个圆, 圆心均在原点, 第$k$个圆半径为$\sqrt{k}$ 定义一个点的美丽值为所有包含这个点的圆的编号和 定义函数$f(n)$为只有$n$个圆时所有点的贡献,求$\sum_{k= ...

  7. C语言按行读文件及字符串分割

    #include<stdio.h> #include<iostream> using namespace std; int main() { char s[50]; char ...

  8. vs2012团队连接(Team Foundation Server)连接不上的怎么办?

    项目管理的Team Foundation Server有时总是连接不上,报连接有误或没有权限,那怎么解决呢?

  9. CCF 2015-03-3 节日

    输出y1到y2年之间的每一年的a月份的第b个周c.感觉像是一个恶心的模拟.更像一个很恶心的小学奥赛题. 题目:http://115.28.138.223/view.page?gpid=T25 考试的时 ...

  10. 跟我一起学习ASP.NET 4.5 MVC4.0(一)

    跟我一起学习ASP.NET 4.5 MVC4.0(一)   由于上面一个项目使用的是ASP.NET4.0 MVC3.0,在招人的时候发现很多人有听说过MVC,但是却是没用过,对MVC也只是一知半解,最 ...