zoukankan      html  css  js  c++  java
  • hdu 2609 字符串最小表示法 虽然不是很懂 还是先贴上来吧。/,。/

    还需要再消化一下这个算法。。 今天没有时间了,, 六级过了 就有大把时间 快活啊!
    #include<iostream> #include<cstdio> #include<cstring> #include<string> #include<set>
    using namespace std; int getmin(string s) { int n=s.size(); int i=0,j=1,k=0,t; while(i<n && j<n && k<n) { t=s[(i+k)%n]-s[(j+k)%n]; if (!t) k++; else { if (t>0) i+=k+1; else j+=k+1; if (i==j) j++; k=0; } } return i<j?i:j; } int main() { cin.sync_with_stdio(false); int t; while(cin>>t) { set<string> fuck; for(int i=1;i<=t;i++) { string ss; cin>>ss; int temp=getmin(ss); int len=ss.size(); string zz; int z=temp,ret; for(ret=0;ret<ss.size();ret++) { zz+=ss[z%len]; z++; } fuck.insert(zz); } cout<<fuck.size()<<endl; } return 0; }
  • 相关阅读:
    SpringBoot入门
    Java自定义注解(1)
    git集成idea
    git常用命令
    Shiro授权
    shiro认证
    shiro入门
    SpringMVC文件上传
    SpringMVC入门
    mybatis关联关系映射
  • 原文地址:https://www.cnblogs.com/z1141000271/p/6024797.html
Copyright © 2011-2022 走看看