博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Revolving Digits(hdu 4333)
阅读量:5167 次
发布时间:2019-06-13

本文共 793 字,大约阅读时间需要 2 分钟。

题意:就是给你一个数字,然后把最后一个数字放到最前面去,经过几次变换后又回到原数字,问在这些数字中,比原数字小的,相等的,大的分别有多少个。比如341-->134-->413-->341,所以和原数字相比,比原数字小的有一个,相等的有一个,大的有一个。

/*  如果比较两个字符串,就比较第一位不一样的,那我们就需要找出所有字符串和已知字符串的前缀公共部分。  在已知字符串后面载copy一份,然后做exkmp就行了。  需要注意的是,相同字符串只能出现一次,所以先求一遍循环节。   有一篇关于exkmp的ppt:http://wenku.baidu.com/view/79992a90bed5b9f3f80f1c16.html?from=search*/#include
#include
#include
#define N 200100using namespace std;int Next[N],cas;char T[N];void kmp(int m){ int i=0,j=-1; Next[i]=-1; while(i
=p){ int j=(p-k+1>0)?p-k+1:0; while(k+j
=len)num2++; else if(T[Next[i]]>T[i+Next[i]])num1++; else if(T[Next[i]]

 

转载于:https://www.cnblogs.com/harden/p/6250054.html

你可能感兴趣的文章
iOS 自定义的对象类型的解档和归档
查看>>
setImageBitmap和setImageResource
查看>>
AndroidStudio3.0 修改项目包名
查看>>
AQS(AbstractQueuedSynchronizer)
查看>>
java例程练习(多线程[join()方法])
查看>>
Divide and conquer:Median(POJ 3579)
查看>>
springMVC4 注解配置实例
查看>>
单片机编程
查看>>
LeetCode-327 Count of Range Sum
查看>>
根据文件夹地址获取txt文件并获取txt内容索引
查看>>
js控制只能输入数字
查看>>
Filter in Servlet
查看>>
HDU4662(SummerTrainingDay03-B)
查看>>
JavaScript基础——定义变量
查看>>
MySql避免重复插入记录
查看>>
Linux--SquashFS
查看>>
Application Pool Identities
查看>>
Nginx服务编译安装、日志功能、状态模块及访问认证模式实操
查看>>
2017-3-24 开通博客园
查看>>
【MySQL性能优化】MySQL常见SQL错误用法
查看>>