自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 nyoj 19

擅长排列的小明时间限制:1000 ms  |  内存限制:65535 KB难度:4描述小明十分聪明,而且十分擅长排列计算。比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你想为难他,在这5个数字中选出几个数字让他继续全排列,那么你就错了,他同样的很擅长。现在需要你写一个程序来验证擅长排列的小明到底对不对。输入第一行输入整数N(1每组测试

2017-08-31 23:14:33 332

原创 nyoj 8 一种排序

一种排序时间限制:3000 ms  |  内存限制:65535 KB难度:3描述现在有很多长方形,每一个长方形都有一个编号,这个编号可以重复;还知道这个长方形的宽和长,编号、长、宽都是整数;现在要求按照一下方式排序(默认排序规则都是从小到大);1.按照编号从小到大排序2.对于编号相等的长方形,按照长方形的长排序;3.如果编号和长都相同,按照长

2017-08-31 20:26:12 250

原创 nyoj 32 组合数

组合数时间限制:3000 ms  |  内存限制:65535 KB难度:3描述找出从自然数1、2、... 、n(0<n<10)中任取r(0<r<=n)个数的所有组合。输入输入n、r。输出按特定顺序输出所有组合。特定顺序:每一个组合中的值从大到小排列,组合之间按逆字典序排列。样例输入5 3样例输出543542541532

2017-08-31 13:08:36 281

原创 51 nod 1057 n的阶乘

输入N求N的阶乘的准确值。Input输入N(1 Output输出N的阶乘Input示例5Output示例120坑点:利用数组 不是一位一位的相乘利用数组每次存多位数     #include#define ll long long#define mod 1000

2017-08-31 10:49:53 244

原创 51nod 1004 n^n问题

给出一个整数N,输出N^N(N的N次方)的十进制表示的末位数字。Input一个数N(1 Output输出N^N的末位数字Input示例13Output示例3直接上版子#includeusing namespace std;int PowerMod(int a,int b,int c){ int ans=1;

2017-08-29 21:24:57 247

原创 快速幂

至于快速幂的概念不详细记录了。当我们想求a的b次幂对c取余时,我们会直接想到用这个算法:int ans = 1;  for( i = 1; i <= b; i++)  {    ans = ans * a;  }  ans %= c; 这个算法的时间复杂度体现在for循环中,为O(b).这个算法存在着明显的问题,如果a和b过大,很容易就会溢出。因此需要用到离散数学知识

2017-08-29 21:16:05 301

原创 51nod 1073 约瑟夫环

N个人坐成一个圆环(编号为1 - N),从第1个人开始报数,数到K的人出列,后面的人重新从1开始报数。问最后剩下的人的编号。例如:N = 3,K = 2。2号先出列,然后是1号,最后剩下的是3号。Input2个数N和K,表示N个人,数到K出列。(2 Output最后剩下的人的编号Input示例3 2Output示例3

2017-08-29 18:04:13 329

转载 51nod 1003 阶乘后面0的数量

#includeusing namespace std;int main(){ int n; cin>>n; int ans=0; while(n){ ans+=n/5; n=n/5; } cout<<ans<<endl; return 0;}

2017-08-29 10:50:50 276

原创 关于 KMP next 数组的应用

仔细看  这个   点击打开链接  好好理解 next数组的含义POJ   2406   求最小的 循环节长度  #include#include#include#includeusing namespace std;char b[1000010];int next[1000010];int m,n;void g_next(int m){ int

2017-08-28 22:58:38 391

原创 关于 模板

请看  这个学姐的版子  ACM在线模版-f-zyj       点击打开链接

2017-08-28 16:27:45 202

原创 KMP算法中关于next数组的探究

一、KMP算法简单介绍KMP算法是字符串匹配算法的一种,相对于朴素的字符串匹配算法而言,可以大大避免重复遍历的情况。此算法可以在O(n+m)的时间数量级上完成字符串匹配操作。二、神奇的next数组关于KMP算法的原理和实现,书上或者百度一下都可以找到,我在这里就不罗嗦那么多了,直接切入主题(next数组)。我们设主串S=abcabcabca,模式串p=abcabx。KMP第一趟

2017-08-28 16:21:20 308

原创 洛谷 1078 文化之旅

题目描述有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一种文化超过一次(即如果他学习了某种文化,则他就不能到达其他有这种文化的国家)。不同的国家可能有相同的文化。不同文化的国家对其他文化的看法不同,有些文化会排斥外来文化(即如果他学习了某种文化,则他不能到达排斥这种文化的其他国家)。现给定各个国家间的地理关系,各个国家的文化,每种

2017-08-23 18:25:12 1203

原创 【最短路问题】 hdu 1875 畅通工程再续

畅通工程再续Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 30847    Accepted Submission(s): 10079Problem Description相信大家都听说一个“百岛湖”的地方

2017-08-20 21:43:24 257

原创 hdu 1233 【Kruskal】

#include#define mem(a,b) memset(a,b,sizeof(a))#define inf 99999999using namespace std;int pre[100001];int f[10001];struct road{ int x,y,z;}a[100001];bool cmp(struct road q,struct road w){

2017-08-20 11:45:25 259

转载 图的最小生成树---Prim算法

转自    http://blog.csdn.net/riba2534/article/details/60149586详解可以参照这里:最小生成树Prim算法理解Prime算法的思想是枚举各个点能到达的所有的路,找出他们之间最短的,首先选择一个顶点加入生成树,然后找出一条边加入到生成树,重复n-1次,把所有的顶点都加入到生成树中,在这个算法里面也需要一个dis数组,不

2017-08-20 10:22:13 241

原创 hdu 1233 【prim】

还是畅通工程Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 48959    Accepted Submission(s): 22342Problem Description某省调查乡村交通状况,得到的统计表

2017-08-20 10:18:51 269

原创 hdu 1272 小希的迷宫 【并查集】

小希的迷宫Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 54397    Accepted Submission(s): 17073Problem Description上次Gardon的迷宫城堡小希玩了很

2017-08-18 17:39:37 282

原创 洛谷 1359 租用游艇 【最短路】

题目描述长江游艇俱乐部在长江上设置了n 个游艇出租站1,2,…,n。游客可在这些游艇出租站租用游艇,并在下游的任何一个游艇出租站归还游艇。游艇出租站i 到游艇出租站j 之间的租金为r(i,j),1对于给定的游艇出租站i 到游艇出租站j 之间的租金为r(i,j),1保证计算过程中任何时刻数值都不超过10^6输入输出格式输入格式:由文件提供输入数据。

2017-08-18 10:26:21 406

原创 hdu 2066 一个人的旅行【Dijkstra】解法

一个人的旅行Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 40267    Accepted Submission(s): 13675Problem Description虽然草儿是个路痴(就是在杭电待了一

2017-08-17 21:08:50 351

原创 最短路径问题 迪杰斯特拉(Dijkstra)算法

最短路Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 69737    Accepted Submission(s): 30482Problem Description在每年的校赛里,所有进入决赛的同学都会获

2017-08-17 17:10:51 887

原创 并查集 版子

hdu    1232    点击打开链接  #include #include #include #include #include #define mem(a,b) memset(a,b,sizeof(a))#includeusing namespace std;bool t[1050];int pre[1050];int find(int x)//找到一个集合父节点

2017-08-16 23:33:31 241

转载 扩展的欧几里得&中国剩余定理

扩展的欧几里得&中国剩余定理扩展的欧几里得(EXTENDED-EUCLID)一、假设:     对于给定的整数a和b,它们满足方程:ax+by=d=gcd(a,b),求出整系数x,y二、推理:    ax+by=gcd(a,b)=gcd(b,a%b)=bx+(a-(int)a/b*b)y=ay+b(x-(a-(int)a/b*y)三、扩展的欧几里

2017-08-16 17:33:10 361

原创 hdu 4540 威威猫系列故事——打地鼠

威威猫系列故事——打地鼠Time Limit: 300/100 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 3812    Accepted Submission(s): 1853Problem Description  威威猫最近不务正业,每天沉

2017-08-15 23:05:07 301

原创 hdu1215

筛选法的理解 就是把所有共同属性的不同元素同时筛选出来 比如 6 是2 的倍数 也是三的倍数 就加2 再加3#include #include #include #include using namespace std;int main(){ int a[500005]; memset(a,0,sizeof(a)); //数组清0是个好习惯 int i

2017-08-14 09:55:19 287

原创 hpu 1413

1413: StarFarming [最短路]时间限制: 1 Sec 内存限制: 128 MB提交: 431 解决: 68 统计题目描述星农(StarFarming)公司计划要给员工发路费津贴,发放的规则是这样的:1到n-1代表各个员工家的序号,n代表公司。路费津贴只发给上班的最短路与回家的最短路的总路程最长的人。该市的路建造的有些奇怪,修路只修单行道,即只允许

2017-08-12 21:28:39 260

原创 hpu 多校联萌(三) 1415

1415: 小ho的01串 [字符串]时间限制: 1 Sec 内存限制: 128 MB提交: 188 解决: 78 统计题目描述有一个由0和1组成的字符串,它好长呀--------一望无际恩,说正题,小ho的数学不太好,虽然是学计算机的但是看见0和1也是很头疼的,现在他的老师想让他计算出来包含K个1的子串有多少个-----呀,头要炸了!!!小ho知道

2017-08-11 23:36:59 316

原创 nyoj 456 邮票分你一半

邮票分你一半时间限制:1000 ms  |  内存限制:65535 KB难度:3描述     小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明。每张邮票上都有分值,他们想把这些邮票分成两份,并且使这两份邮票的分值和相差最小(就是小珂得到的邮票分值和与小明的差值最小),现在每张邮票的分值已经知道了,他们已经分好了,你知道最后他们得到的邮票分值和相差多少吗?

2017-08-11 21:02:48 233

原创 模拟

螺旋输出 数字;#includeusing namespace std;int a[1001][1001]={0};int main(){ int n,j,l,k,i,x,y,x1=0,y1=0,e=100,b=0,c=100,d=0; cin>>n; for(j=1;j<=n/2;j++){ for(k=1;k<=j;k++){ if(j*k>=n){ x

2017-08-09 23:16:34 235

原创 栈的应用 数组模拟 (指针)

什么是栈?

2017-08-08 11:18:25 813

原创 P1018 乘积最大

题目描述今年是国际数学联盟确定的“2000――世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目:设有一个长度为N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使得这K+1个部分的乘积能够为最大。

2017-08-05 17:30:09 357

原创 最长递增子序列

对于动态规划问题,往往存在递推解决方法,这个问题也不例外。要求长度为i的序列的Ai{a1,a2,……,ai}最长递增子序列,需要先求出序列Ai-1{a1,a2,……,ai-1}中以各元素(a1,a2,……,ai-1)作为最大元素的最长递增序列,然后把所有这些递增序列与ai比较,如果某个长度为m序列的末尾元素aj(j<i)比ai要小,则将元素ai加入这个递增子序列,得到一个新的长度为m+1的新序列,

2017-08-05 16:06:19 325

原创 邪能炸弹

状态 题目描述正在入侵艾泽拉斯的古尔丹偶然间得到了一颗邪能炸弹,经过研究,他发现这是一颗威力极其巨大且难以控制的炸弹。但是精通邪能的古尔丹突然有了一个大胆的想法,他对炸弹进行了一些小小的改造。这使得炸弹需要n天的充能才能爆炸,在这n天中,每天炸弹的邪能值都会产生波动,波动值为xi,古尔丹唯一能控制的是使邪能值增加xi或减少xi,如果邪能值小于0或大于MAX,那么炸弹将会损坏并失效。

2017-08-04 23:34:37 315

原创 暑假多校联盟(=) e题 书架

问题 E: YK的书架时间限制: 1 秒  内存限制: 128 MB提交: 596  解决: 138提交 状态 题目描述    YK新买了2n+1本相同的书,准备放在家里的3层书架上(每一层放书的数量>=0且输入输入有多行,每行一个整数n(1,其含义如题目描述中所述输出对于每行输入,输出一行答案。样例输入12样例输

2017-08-04 20:44:59 440

原创 链表(第一次错误尝试)

今天 正式开始学习数据结构的 知识 开始先写一个小链表暑假训练也正式开始了不能再水了     我的牵挂  我的渴望 直至以后本来想看看 本人的博客 学习一个 简单的小程序  找一个都是几百行的  看着 也看不懂 用了一大堆也不知道什么东西  还是自己看书 写最简单的     我想我的应该是 最简单的 小链表了吧      看这个 应该也通俗易懂//链表 小练习

2017-08-01 23:29:25 274

空空如也

空空如也

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

TA关注的人

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