自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

stven_king的专栏

自信人生两百年、会当击水三千尺

  • 博客(429)
  • 资源 (16)
  • 问答 (2)
  • 收藏
  • 关注

原创 HDOJ 1316 How Many Fibs?

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1316#include#include#includeusing namespace std;const int Max=2001;char f[Max][Max]={"1","1","2"};char tmp[Max],str1[Max],str2[Max];void set(cha

2015-12-18 18:14:01 511

原创 HDOJ 1316 2^x mod n = 1

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1395题目注意一下n小于等于1的处理……#include#includeusing namespace std;//蒙哥马利快速幂int Montgomery(__int64 a,int b,int c){    __int64 ans=1;    while(b){       i

2015-12-18 18:13:59 479

原创 快速幂取模运算

1.模取运算的性质(1)(a+b)%c =((a%c)+(b%c))%c(2)(a*b)%c = ((a%c)*b)%c2.快速幂乘计算a^b(1)a,b都为正数,将b二进制化(2)时间复杂度为logb,乘法次数不是最少的__int64 power = 1;while(b > 0){   if(b&1) power *= a;    a*= a;    b>

2015-12-18 18:13:56 1209

原创 POJ 2406 Power St…

#include#includeconst int N = 1000000+10;char str[N];int next[N];int len;void GetNext1(char str[N],int next[N])//寻找模式串的粗略next{    intl=strlen(str);   next[0]=-1;    inti=0,j=-1;   while

2015-12-18 18:13:53 466

原创 【转载】C语言中scanf格式化输入函…

scanf函数,与printf函数一样,都被定义在stdio.h里,因此在使用scanf函数时要加上#include。它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中,其关键字最末一个字母f即为“格式”(format)之意。[编辑本段]scanf函数的一般形式  scanf(格式控制,地址表列)  int scanf(char *format[,argume

2015-12-18 18:13:50 600

原创 HDOJ 1242   Rescue

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1242代码:#include#include#include#include#includeusingnamespace std;const intMAXN=200;const intINF=10000000;typedefstruct points{   int x,

2015-12-18 18:13:47 466

原创 HDOJ 4278  Faulty Odometer

题目:http://acm.hdu.edu.cn/showproblem.php?pid=4278题目意思为:有一个里程表没有3,8这两个数字0,1,2,4,5,6,8,9这八个数字构成一个循环(一个八进制)但数字的顺序不一样,先将给定的数字转化为实际的数字(八进制),再将八进制转化为十进制代码:#include#includeusing namespace std;int main

2015-12-18 18:13:44 541

原创 POJ 2364 Balanced Lineup

转载:http://blog.csdn.net/niushuai666/article/details/7401403题目链接:http://poj.org/problem?id=3264题目大意:一个农夫有N头牛,每头牛的高度不同,我们需要找出最高的牛和最低的牛的高度差。解题思路:我是用RMQ写的。N为50000,Q为200000,如果我们暴力的话,需要50000*200000=1

2015-12-18 18:13:41 540

原创 转载用ST的RMQ算法

转载:http://blog.csdn.net/niushuai666/article/details/66246721. 概述RMQ(Range Minimum/MaximumQuery),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j当然,该问题也可以用线段树(也叫区间树)解决,算法复杂度为:O(N)~O(logN),这里我们暂不介绍

2015-12-18 18:13:39 376

原创 字典树

字典树,又称单词查找树,Trie树,是一种树形结构,典型应用是用于统计,排序和保存大量的字符串,所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来节约存储空间,最大限度的减少无谓的字符串比较,查询效率比哈希表高。它有三个基本性质,根节点不包含字符,除根节点外每一个节点都只包含一个字符,从根节点到某一节点,路径上经过的字符连接起来,为该节点对应的字符串,每个节点的所有子节点

2015-12-18 18:13:36 478

原创 KMP字符串模式匹配详解

KMP字符串模式匹配详解KMP字符串模式匹配通俗点说就是一种在一个字符串中定位另一个串的高效算法。简单匹配算法的时间复杂度为O(m*n);KMP匹配算法。可以证明它的时间复杂度为O(m+n).。一. 简单匹配算法一个普通匹配算法的函数:int Index_BF ( char S [ ], char T [], int pos ) {int i = pos, j = 0;whi

2015-12-18 18:13:34 676

原创 HDOJ  4341  Gold miner[条件背包]

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4341题目解析:给定时间让你求出能获得到的最大价值,对于每一次显然,必须先拿走前面的金子才能拿后边的,所以排序处理共线情况。然后进行背包即可,,,,,,『将直线前面的视作一个背包,将前面和后面合在一起视作一个背包,然后就简化为01背包问题』题解报告代码:#include#include#

2015-12-18 18:13:31 504

原创 Lucas定理 && HODJ  4349

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4349首先给出这个Lucas定理: A、B是非负整数,p是质数。AB写成p进制:A=a[n]a[n-1]...a[0],B=b[n]b[n-1]...b[0]。则组合数C(A,B)与C(a[n],b[n])*C(a[n-1],b[n-1])*...*C(a[0],b[0])  modp同余

2015-12-18 18:13:29 465

原创 HDOJ  4342   History repeat itse…

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4342题解:题目要求第N个不是平方数的数,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,171^2    2^2           3^2                       4^2假设有一个K为第N个数之前的那个平方数,有K^2(两边同时加

2015-12-18 18:13:26 467

原创 HDOJ  1597    find the nth digit

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1597#include #include using namespace std;ints[]={1,1,2,1,2,3,1,2,3,4,1,2,3,4,5,1,2,3,4,5,6,1,2,3,4,5,6,7,       1,2,3,4,5,6,7,8};int main(){   

2015-12-18 18:13:23 477

原创 HDOJ  1262   寻找素数对

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1262#include #include int k[10000]={0};void prime(){   memset(k,0,sizeof(k));    inti,j;   for(i=2;i    {       if(k[i]==0)       {       

2015-12-18 18:13:21 565

原创 swap函数

swap的宏定义:#include #define swap(x,y)\  //在宏定义中的反斜杠表示的是这一行没有写完在下一行接着写x=x+y;\y=x-y;\x=x-y;int main(){    intx=1111,y=2222;    printf("\n%d\t%d",x,y);   swap(x,y);   printf("\n%d\t%d",x,y)

2015-12-18 18:13:18 2264

原创 威佐夫博弈、黄金分割、POJ  1067

题目链接:http://poj.org/problem?id=1067题解:有两堆各若干个物品,两个人轮流从某一堆或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。   这种情况下是颇为复杂的。我们用(ak,bk)(ak ≤bk,k=0,1,2,...,n) 表示两堆物品的数量并称其为局势,如果甲面对(0,0), 那么甲已经输了,这种局势我们称为奇异局势。前

2015-12-18 18:13:16 507

原创 如何写出很牛的代码,提高你的代码…

首先要使用C/C++的灵活性,然后要了解,写这些代码,是为了提高效率,而不是做show,好,现在就开始吧。No1:scanf("  ")这里一个空格表示跳一个字符,然后读取,可用于清空前面空格和回车,比如有下面一段程序:#include int main(){ char nTemp; while(true) { scanf(" %c",&nTemp); printf(

2015-12-18 18:13:13 577

转载 由poj 1067引发的——取石子游…

原文地址:1067引发的——取石子游戏【转自各类博弈】">由poj 1067引发的——取石子游戏【转自各类博弈】作者:雨昕上次做poj1067的取石子游戏,只用到了whthoff博弈,未涉及到取石子的异或方法,今天重新搜索,整理了一遍。搜罗各种资料,加上自己整理,终于成篇啦!……噼里啪啦 取石子问题有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可。两个人轮流从堆中取

2015-12-18 18:13:11 535

原创 POJ题目分类

POJ题目分类递推:杭电2050 2018 2046 2041 2042 2045 1465数据结构:字符串 北大 2121贪心: 北大 1065 杭电:1051 2037 1050 浙大:1076 175610251、排序1423, 1694, 1723, 1727, 1763, 1788, 1828, 1838, 1840, 2201,2376, 2377, 2380, 131

2015-12-18 18:13:08 553

原创 HDOJ  1999  不可摸数

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1999这道题打表就可以过,在讨论里说有些数据不对,可能是后台的程序有误,,,或者测试数据太弱了.....,所以不应管太多,直接上代码,#include int s[500000]={0},f[1001]={0};void inti(){    int i,j;    for(i=

2015-12-18 18:13:06 557

原创 HDOJ  1240   Asteroids!

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1240题目解析:题目给了一个三维的空间坐标系,找一个点到另一个的最短的距离,这其实和二维的一样,只不过有些的小小的改动,我自己是按照广搜的,每一次搜完之后清空#include #include #include #include const int MAX=1000000;using nam

2015-12-18 18:13:03 467

原创 优先队列&&队列

优先队列用法转载:http://www.cppblog.com/shyli/archive/2007/04/06/21366.html在优先队列中,优先级高的元素先出队列。标准库默认使用元素类型的优先队列的第一种用法,也是最常用的用法:基本操作:empty() 如果队列为空返回真pop() 删除对顶元素push() 加入一个元素size() 返回优先队列中拥有的元素个数top

2015-12-18 18:13:01 481

原创 HDOJ  1994   利息计算

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1994题目给的不是太明白,但写出来改改就好,,,#include int main(){    int t;   scanf("%d",&t);    doubley,q,e,f,g,sum1,sum2;   while(t--)    {       sum1=sum2=0.0

2015-12-18 18:12:58 635

原创 HDOJ  4337   King Arthur's Knigh…

题目:http://acm.hdu.edu.cn/showproblem.php?pid=4337题目感觉用深搜,#include #include #define MAX 200int n,m,step;int map[MAX][MAX];int visit[MAX];bool pass[MAX],flag;void dfs(int x,int step){    int

2015-12-18 18:12:56 454

原创 错排公式

转载:http://blog.163.com/seeker_forever/blog/static/163238938201042211595207/ 颜书先生《“装错信封问题”的数学模型与求解》一文(见《数学通报》 2000 年第 6 期p.35 ),给出了该经典问题的一个模型和求解公式:编号为 1 , 2 ,……, n 的 n个元素排成一列,若每个元素所处位置的序号都与它的编号不同,

2015-12-18 18:12:53 808

原创 HDOJ  4334   Trouble

题目:http://acm.hdu.edu.cn/showproblem.php?pid=4334题解:如果我们有两个整数排序的列表A和B,我们可以很容易地找到在线性时间通过保持两个指针如果有一分之一和B在B,这样+ B =c(c给定)。  现在,对于这个问题,我们创建一个排序的列表s[0]和s[1](称之为M[0]),和一个排序的列表s[2]和s[3](称之为M[1])。我们可以做到

2015-12-18 18:12:51 402

原创 HDOJ  4325  Flowers

题目:http://acm.hdu.edu.cn/showproblem.php?pid=4325题目自解:将开花时间和闭花时间进行排序,某时刻开花的数减去花谢的数就是正在盛开的花的数目,用二分法查找#include #include #include int a[100005],b[1000005];int see[100005][2];int n,m;int Find(int

2015-12-18 18:12:48 380

原创 HDOJ  1312  Red and Black

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1312水一样的深搜,,#include #define MAX 20int n,m,count;int dri[4][2]={{0,1},{0,-1},{1,0},{-1,0}};char map[MAX][MAX];void dfs(int x,int y){   count++; 

2015-12-18 18:12:45 436

原创 HDOJ  1241  Oil Deposits

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1241简单的深搜题目,,,#include #define MAX 100+1int n,m;intdri[8][2]={{0,1},{0,-1},{1,0},{-1,0},{1,1},{-1,-1},{1,-1},{-1,1}};char map[MAX][MAX];void dfs(i

2015-12-18 18:12:43 442

原创 HDOJ  4104   Discount

题目: http://acm.hdu.edu.cn/showproblem.php?pid=4104题目的意思是给以一串数字,让你求出这串数字相加不能组成的最想数字,但这个最小数字必须要比给出的的数字当中的最小的大,,,假设有a,b,c,d,e,f,g,h,i,j,k.....从第二个数子开始,假设此数字之前的所有数字之和(sum)比这个数字要小,则答案为此数字之前的所有数字之和加一(su

2015-12-18 18:12:40 483

原创 HDOJ  2717   Catch That Cow

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2717#include #include #include using namespace std;#define MAX 200100//因为输入的数n,k最大值为100000,//但有一个2*k位置要存储,所以要将N设置到两倍最大值。int farmer[MAX];/数组记录前进的步数i

2015-12-18 18:12:37 690

原创 HDOJ  1301  Jungle Roads

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1301很好写的prim吧,同样Kruskal也可以#include #include #include #define MAX 1000000int Edge[27][27];int lowcost[27];int n;void init(){    inti,k,num,x,y;

2015-12-18 18:12:35 511

原创 HDOJ  1162   Eddy's picture

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1162prime算法好些,但Kruskal也可以#include #include #include #define MAX 1000000double Edge[110][110];double as[110][2];double lowcost[110];int n;void ini

2015-12-18 18:12:32 638

原创 HDOJ  2048   神、上帝以及老天爷

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2048用错排,搞定!#include __int64 a[21];void inti(){    inti,j;    for(i=1;i    {       a[i]=1;       for( j=2;j           a[i]*=j;    }}int m

2015-12-18 18:12:30 546

原创 HDOJ 2047   阿牛的EOF牛肉串

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2047设n位字符串,最后一位是O的字符串的个数为a[n],最后一位不是O的字符串的个数是b[n],总字符串个数为x[n],则有f[n]=a[n]+b[n];a[n]=b[n-1];b[n]=2*f[n-1];====>f[n]=2*f[n-1]+2*f[n-2] #includeint

2015-12-18 18:12:27 748

原创 HDOJ  2046  骨牌铺方格

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2046推导公式:f(n)=f(n-2)+f(n-1)与2046题很相似,因为假设前(n-2)个排好,剩下的就只有两种排法如果前(n-1)个排好,那么最后一个就只有一种排法但(n-2)的和(n-1)的一种是相同的,所以要去掉一种#includeint main (){    inti,a;

2015-12-18 18:12:25 525

原创 HDOJ  2045   不容易系列之(3)—— L…

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2045推导公式:f(n)=2*f(n-2)+f(n-1)因为假设前(n-2)个排好,剩下的就只有两种排法如果前(n-1)个排好,那么最后一个就只有一种排法数据可能很大要使用long long int 或(__int64)#includeint main (){    inti,a;   

2015-12-18 18:12:22 461

原创 HDOJ  2044   一只小蜜蜂...

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2044题目告诉的从哪里走到哪里其实不重要,而是看你走了多少,__int64,菲波拉数列#include #include int main(){    intt,a,b;    __int64p[51]={0,1,2,3};   scanf("%d",&t);   while(t

2015-12-18 18:12:19 524

tonic-refs_heads_master.tar.gz

Google开发的新的操作系统Fuchsia其中的tonic相关的代码,在学习flutter和dart源码的时候里面会用到部分代码。

2019-08-09

微信webview唤起外部客户端接入说明2018版

微信webview唤起外部客户端接入说明2018版。 为提升微信 webivew 中网页打开其他应用的体验,防止诱导点击、强制跳出等不合理行为, 我们的“唤起外部客户端”的能力统一调整为: 1、 在 6.5.16 及以上版本的微信客户端中,贵方网页将只能使用 launchApplication 接口,打 开其他应用。该接口会在唤起前要求用户接受弹窗确认。 2、 在 6.5.16 以下版本的微信客户端中,贵方网页可以继续使用现有方式,打开其他应用。

2019-02-21

gradle_2.0.0-instant-run源码

gradle_2.0.0-instant-run源码,可查看BootstrapApplication,IncrementalClassLoader等类。

2018-05-10

红黑树相关代码以及解析

红黑树的添加、删除、遍历等代码&以及注释,提供测试样例~!

2018-03-12

深入探索Android热修复技术原理

阿里巴巴开源的《深入探索Android热修复技术原理》,其中讲述了热修复技术以及原理。

2017-11-09

BinaryTree二叉树操作相关代码

二叉树相关操作:判断是否为二叉排序树、完全二叉树、二叉平衡树;翻转二叉树,求树的深度、叶子节点个数,某节点到根节点的路径,两个节点的最近公共节点等等。

2017-10-19

IntelliJ IDEA入门图文教程整理(全部)

史上最全的的Intellij IDEA使用文档,图文结合正确的描述个性化的设置。适用于Intellij IDEA,Android Studio,Web Storm等等。

2016-10-17

org.apache压缩工具包

由apache提供的压缩解压工具类,比JDK原生类库中的方法更好使用。

2015-04-02

Java中的pingying工具包pinyin4j-2.5.0.jar

汉子转化拼音的工具包,可以把汉子的字母提取出来,这样方便与做类似于通讯录的Demo。

2014-08-08

Eclipse智能提示删除空格,等于,分号键,点上屏

Eclipse其Version: 4.2.2的去掉不需要的(eg:空格或等号或其他)按键上屏提示,增加自己需要的按键提示。

2014-08-07

动态绘制图片

BitMap代表一张位图,BitmapDrawable里封装的图片就是一个Bitmap对象,开发者被一个Bitmap对象包装成BitmapDrawable对象,可以调用BitmapDrawable的构造器。再者对它进行平移,缩放,旋转等。

2014-07-23

NotificationDemo

调用getSystemService(NOTIFICATION_SERVICE)方法获取系统的NotifacationManager服务 通过构造器创建一个Notification对象 为Notification设置各种属性 通过NotificationManager发送Notification。

2014-07-16

FTP套接字编程

在前三个实验的基础上,将其改造为一个能传输指定文件名称的点对点文件传输软件 设计并实现一个支持多个客户端的文件传输服务器 客户端等待键盘输入文件名称,然后将文件名称传输给服务器,服务器在预先设置好的文件夹下查找该文件,如果发现同名文件,开始传输回客户端,客户端接收完文件后将文件以输入的文件名称保存在本地某个目录即可,否则告诉客户端文件不存在。

2014-04-23

Windows下多线程套接字编程

windows下的多线程的并发的套接字编程

2014-04-09

Windows平台简单socket编程

(1)在Windows上,编写、编译1个客户机端程序和1个服务器端程序。要求客户机端程序能发送请求给服务器端程序,服务器端程序收到后能发送本机时间给客户机端程序。 (2)在相同或不同机子上,先运行服务器端程序可执行文件,后运行客户机端程序可执行文件。

2014-03-27

内排序算法比较

1) 对以下 6 种常用的内部排序算法进行比较:起泡排序,直接插入排序,简单选择排 序,快速排序,希尔排序,堆排序。 2) 待排序记录的文件个数不小于 1000( 其数据用伪随机数产生 ),至少用5 组不同的 输入数据作比较;比较的指标为关键字的比较次数和关键字的移动次数(一次关键 字交换计为3 次移动)。 3) 统计在完全正序、完全逆序及无序情况下的关键字比较次数和移动次数。 4) 对结果作简单分析,包括对各组数据得出结果波动大小的解释。

2013-03-14

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除