自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

三个石头

菜鸡努力中

  • 博客(52)
  • 资源 (8)
  • 收藏
  • 关注

原创 拓扑排序--九度.1449.[优先级队列实现小顶堆]

题目:http://ac.jobdu.com/problem.php?pid=1449思路: 题目要求输出排名实际就是输出拓扑序列,使用vector和queue并不难实现; 主要是其要求在有多个序列满足时,仅输出号码排列最小的那个;想到的解决办法是用 priority_queue实现小顶堆 保存入度为0的结点,这样每次出队列的都是其中号码最小的,当有多个拓扑序列时,自然满足。#include<

2017-02-28 20:47:41 415

原创 拓扑排序--九度1448

题目:http://ac.jobdu.com/problem.php?pid=1448注解:自己用数组实现的,没有用vector,有点笨吧!#include<cstdio>using namespace std;int inCount[110];//记录入度struct relation { //边 int x, y; //左右端点 bool exsit;}rt[110];int

2017-02-28 14:34:40 210

原创 最短路径--九度1008.[Dijkstra]

题目:http://ac.jobdu.com/problem.php?pid=1008本题要求是要在最短路径长度相同的情况下,选择花费小的方案,但其实是没有这样的测试点的;九度还是有点弱哪!!【纠结】:为什么在选最小边时不用考虑花费因素呢?#include<cstdio>using namespace std;int edges[1010][1010]; //边长int cost[1010][1

2017-02-28 10:26:35 229

原创 最短路径--九度1447[Floyd & Dijkstra]

题目:http://ac.jobdu.com/problem.php?pid=1447#include<cstdio>using namespace std;int ans[110][110];int main() { int n, m, a, b, c; while (scanf("%d%d", &n, &m) != EOF) { if (0 == n && 0

2017-02-28 00:45:50 241

原创 二叉树--九度1078. [前序+中序 -> 后序]

【2017/2/26 | 一次性完成,好有成就感!坚持总有回报!】题目:http://ac.jobdu.com/problem.php?pid=1078题意:给出二叉树的前序和中序遍历结果,输出后序遍历结果#include<cstdio>#include<cstring>#include<algorithm>#define maxSize 30using namespace std

2017-02-26 15:56:07 169

原创 【ACM】PAT.A1107 Social Clusters【并查集】

【2017/2/26】 【还有三个测试点不过!!!】#include&lt;cstdio&gt;#include&lt;algorithm&gt;#include&lt;cmath&gt;#define maxSize 1010using namespace std;/*PAT.A1107.social cluster题意:N个人,每人有不同的爱好,统计有同类爱好的人,并输出人数人数[1,1000] 爱好类型[1,

2017-02-26 10:21:08 427

原创 最小生成树--九度1154[Kruskal]

题目[jungle Roads]: http://ac.jobdu.com/problem.php?pid=1154思路:没什么特别,就是简单的kruskal算法实现,重点在数据的处理转换。疑惑:实现的时候要读入单个字符,使用scanf(“%c”)总是出错,最后想到的解决办法是按字符串读入,再取其0位字符。 应该有正规的格式,暂时还没搜到!#include<cstdio>#include<algo

2017-02-25 20:20:14 482

原创 最小生成树--九度1144[Kruskal]

【2017/2/25】 题目:http://ac.jobdu.com/problem.php?pid=1144思路:题目本身就是Kruskal算法找最小生成树,没什么难度;重点在于数据的转化处理。需要把原始的坐标信息,转化为点的编号。#include<cstdio>#include<algorithm>#include<cmath>#define maxSize 10005using na

2017-02-25 18:08:19 207

原创 最小生成树--九度1017[Kruskal]

【2017/2/25】【还是畅通工程】很简单的题目,克鲁斯卡尔标准步骤!#include<cstdio>#include<algorithm>#define maxSize 10005using namespace std;struct Road { int a, b; int len;}road[maxSize];int tree[105];bool cmp(Road A

2017-02-25 16:49:44 211

原创 【ACM】九度.1444【并查集】

题目:http://ac.jobdu.com/problem.php?pid=1444题意:查找最大的集合,输出集合中的元素个数思路: 用一个额外数组group[ i ] 记录以结点 i 为根节点的集合所含元素数,合并集合时累加。 注意的一点是:单点是单元素集合,初始化为1,而非0!#include<cstdio>#define maxSize 10000001using namespace

2017-02-25 15:54:22 252

原创 【ACM】九度1012 & 1109 【并查集】

题目:http://ac.jobdu.com/problem.php?pid=1012思路:类似于kruskal算法对数据进行预处理,分成不同集合,集合个数减一就是答案感悟:寻找根节点时,进行了路径压缩,即在查找过程中,路径上所有点的父节点都重新赋值,直接指向根节点;这样有效降低搜索树的高度,提高了效率#include<cstdio>#define maxSize 1005using names

2017-02-25 11:57:10 274

原创 哈夫曼树--九度 1172 & 1107 [优先队列实现小顶堆]

题目:http://ac.jobdu.com/problem.php?pid=1172哈夫曼树的最小权值 = sum(叶节点权值 * 路径长度)思路: 1、把候选节点放入队列中; 2、每次取出两个最小点,合并后把父节点再投入堆中 3、重复步骤2,直到队列中只有一个结点,即为根节点实现方式: 中间结点【即非叶节点】的权值 累加求和 即可!【忘了如何证明的话画个草图很容易就看出来了】#includ

2017-02-25 09:38:58 964

原创 学习过程 [摘自某博文的评论中]

理解和讨论之前请先学会如何观察!计算机组成原理→DOS命令→汇编语言→C语言(不包括C++)、代码书写规范→数据结构、编译原理、操作系统→计算机网络、数据库原理、正则表达式→其它语言(包括C++)、架构……对学习编程者的忠告: 多用小脑和手,少用大脑、眼睛和嘴,会更快地学会编程! 眼过千遍不如手过一遍! 书看千行不如手敲一行! 手敲千行不如单步一行! 单步源代码千行不如单步Debug版对应

2017-02-25 08:44:48 195

原创 【ACM】PAT.A1091 Acute Stroke【搜索】

题目:https://www.patest.cn/contests/pat-a-practise/1091题目本身不难,类似于非连通图的BFS()标准遍历代码,从每一点向六个方向扩展即可。/**************************//@Author: 3stone//@ACM: PAT-A1091 //@Time: 18/2/2//@IDE: VS2017**

2017-02-24 23:18:31 344

原创 【ACM】PAT. A1075. PAT Judge【排序】

有一个测试点过不了,要过一遍算法笔记的代码才行哪!#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#define maxSize 100000using namespace std;struct subminttion { int id; int success = 0; //完美解

2017-02-24 20:20:28 287

转载 C++ 中数据类型 相关

C/C++中各种类型int、long、double、char表示范围http://blog.csdn.net/xuexiacm/article/details/8122267浮点数存储原理 & 运算法则http://blog.csdn.net/vincent040/article/details/6211838浮点数判等(判0)https://www.cnblogs.com/k

2017-02-24 08:36:06 157

原创 【ACM】PAT.A1103 Integer Factorization【搜索】

题意: K个数 的 P次方之和 = N N &lt;= 400, K &lt;= N, 1 &lt; P &lt;= 7 多方案时选择基数和最大的,基数和也相同时按字典序选择最靠前的思路: 1、由于p确定,可以提前确定P次幂小于N 的数,用数组fac[] 保存起来 2、每次DFS()确定是否加 fac[i],形成两个分支 3、需要传的参数有: cur: 从N递减遍历求幂次和,保

2017-02-23 19:43:09 218

原创 搜索--九度1457.[BFS]【好题】

【待整理】#include<cstdio>#include<queue>using namespace std;bool mark[105][105][105] = { false };int success = 0;//不能先喝一部分,必须先平分开,//最后满足的状态是 大杯子/瓶子 装了一半可乐struct point { int s, max, min, t;};queu

2017-02-23 14:44:26 349

原创 搜索--九度1461.[DFS]

注意点:每次DFS()后一定要恢复 点的可访问性#include<cstdio>using namespace std;char row[10][10] = { 0 };int map[10][10] = { 0 };bool mark[10][10] = { false };int flag = 0;int go[][2] = { //坐标变换数组 1, 0, -1, 0

2017-02-23 09:58:59 239

原创 搜索--九度1456.[BFS]

题目:http://ac.jobdu.com/status.php?user_id=real_3stone坐标变换数组是一种很好的形式,以后多尝试#include<cstdio>#include<queue>using namespace std;int cas[51][51][51] = { 0 }; //坐标点int mark[51][51][51] = { 0 }; //是否已访问i

2017-02-22 21:32:29 200

转载 计算几何-二分求幂

如何快速求解 a 的 b次幂? 【王道机试指南 P85 –待整理】题目: 九度1441#include<cstdio>#include<cstring>using namespace std;//题目要求最后三位,故中间值也只用保留三位即可,//可避免了中间值太大导致无法保存int main() { int a, b; while (scanf("%d %d", &a, &

2017-02-22 15:38:10 270

原创 【算法整理】最大公约数&最小公倍数【欧几里得】

最大公约数 求解步骤:1、若a,b全为0则它们的最大公约数不存在;2、若a,b其中之一为零,则它们的最大公约数为非零的那个;3、若a,b都不为零,则使 a = b; b = a % b; 重复该过程,直到b为零最小公倍数 = (a * b)/最大公约数 #include<cstdio>#include<cstring>using namespace std;int gcd_1(int a

2017-02-22 00:25:14 266

转载 计算int型数据的位数

如果要计算一个int类型数据的位数,方法:1、传统的用一个计数变量count,然后循环体中一直number/10,count计数,最后的count就是位数2、直接用log函数,位数count=(int)log10(num)+13、用sprintf和strlen函数,sprintf(str,”%d”,num),count=strlen(str),这种直接求长度效率肯定要低很多,但是直接用了库函数不需要

2017-02-21 23:28:42 7090

原创 求模运算--小整理

一、a % b 的计算步骤计算出a的绝对值被 b的绝对值除所得的余数,再使该余数的符号与a保持一致。即:表达式的结果与b的符号没有直接关系二、修正余数,使为正使得余数范围落在0至b-1对a%b取得的余数 加上除数后再对该和求模,即新余数为: r'=(r+b)%b原理: 以下均满足余数定义,为了避免当旧余数 r 为零时,(r+b)为除数b,再模b,这样不仅对可能出现的负余数做了适当的修正,同时对出

2017-02-21 22:21:36 964

原创 栈的应用--九度1019.简单计算器【神】

转载自:http://www.xuebuyuan.com/1980063.html#include "stdio.h"#include "string.h"#define MAX 1001//格式化读入double stack[MAX]; //保存运算符int tail;int main() { int a; while (scanf("%d ", &a) && a != 0

2017-02-21 20:51:09 280

原创 栈的应用--九度1153.括号匹配问题

题意:http://ac.jobdu.com/problem.php?pid=1153#include<cstdio>#include<cstring>#include<stack>#define maxSize 110using namespace std;int main() { char str[maxSize]; char re[maxSize]; while

2017-02-21 11:41:09 667

原创 递归--九度1120.全排列

#include<cstdio>#include<iostream>#include<string>#include<algorithm>#define maxSize 10using namespace std;/*全排列问题:使用hash数组,下标表示数字,内容为true/false表示是否已探测过递归算法:假设0到(index-1)已经满足,讨论与index位的情况递归基:

2017-02-19 23:17:53 295

原创 递归--九度1460.Oil Deposit【待优化】

题目: http://ac.jobdu.com/problem.php?pid=1460 【代码需重写,太糙了】 类似于n皇后问题:使用hash数组,下标表示数字,内容为true/false表示是否已探测过 递归算法:DFS搜索 递归基:遍历一遍即可#include<cstdio>#include<iostream>#include<cstring>#include<string>#

2017-02-19 16:32:34 265

原创 VS 提示 数组名不明确

如下图所示原因是和 保留字 冲突了,换个名字就好了

2017-02-19 14:47:19 3730 1

原创 递归--【全排列问题】九度1459.Prime ring problem

题目:http://ac.jobdu.com/problem.php?pid=1459#include<cstdio>#include<iostream>#include<cstring>#include<string>#include<cmath>#include<algorithm>#define maxSize 10010using namespace std;/*全排列问

2017-02-19 11:27:14 361

原创 递归--九度1458.汉诺塔3

题意: 改变游戏的玩法,不允许直接从最左(右)边移到最右(左)边(每次移动一定是移到中间杆或从中间移出),也不允许大盘放到下盘的上面。现在有N个圆盘,她至少多少次移动才能把这些圆盘从最左边移到最右边?递归式:F(n) = 3F(n-1)+2 递归基:F(1) = 2#include<cstdio>using namespace std;long long F(int n) {//递归返回值较大

2017-02-19 09:08:57 519

原创 【ACM】PAT. A1038 Recover the Smallest Number 【贪心算法】

题意:给出若干有前导零的数字串,将它们拼接,是生成的数最小 样例: 5 32 321 3214 0229 87 22932132143287贪心策略:直接按字典排序会有问题,稍作调整 正确解法: 字符串a,b 若 a + b < b + a,则a排在b前#include<cstdio>#include<iostream>#include<cstring>#include<string

2017-02-18 23:24:48 280

原创 【ACM】PAT. A1067 Sort with Swap(0,*)

题意: https://www.patest.cn/contests/pat-a-practise/1067#include&lt;cstdio&gt;#include&lt;iostream&gt;#include&lt;cstring&gt;#include&lt;algorithm&gt;#define maxSize 100010using namespace std;int permu[maxSize];int findWr

2017-02-18 21:46:24 253

原创 【ACM】PAT. A1037. Magic Coupon【贪心选择】

题意:https://www.patest.cn/contests/pat-a-practise/1037 瑕疵:有一个测试点过不了,显示段错误,疯了#include<cstdio>#include<iostream>#include<cstring>#include<algorithm>#define maxSize 10000using namespace std;int a[maxS

2017-02-18 18:36:05 261

原创 【ACM】PAT. A1033 To Fill or Not to Fill【贪心算法】

题意:https://www.patest.cn/contests/pat-a-practise/1033//策略1:在满油能到达的站中选择 油价比本站低的 最近站点 //策略2:若满油能到达的站中无 油价比本站低的站点, // 则在可到达的点中选择 油价最低 的 //策略3:满油仍无可到达站点 或 到达终点 时退出#include<cstdio>#include<iostrea

2017-02-18 16:23:15 270

原创 贪心选择--九度1434[今年暑假不AC]

| 问题描述: 活动安排问题,尽可能多安排活动| 问题思路: 按活动结束时间降序排列,然后贪心选择| 贪心证明: 参考博客AC C++代码:#include&amp;amp;lt;cstdio&amp;amp;gt;#include&amp;amp;lt;iostream&amp;amp;gt; #include&amp;amp;lt;string&amp;amp;gt;#include&amp;

2017-02-18 09:00:04 246

原创 分解质因数-PAT.A1059

#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<string>#include<cmath>#define maxSize 100010using namespace std;int prime[maxSize] = { 0 };int judgePrime(int ex) {/

2017-02-17 19:32:33 262

原创 散列-PAT.A1078 Hashing

注意:本题考察点–二次探查法的上限为所给的用于求余的素数#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<string>#define maxSize 11111 //设置为10000就会出错using namespace std;int judgePrime(int ex) {//

2017-02-17 13:38:29 370

原创 【ACM】PAT.A1016 Phone Bills 【文本处理】【排序】

题目连接:https://www.patest.cn/contests/pat-a-practise/1016#include&amp;lt;cstdio&amp;gt;#include&amp;lt;iostream&amp;gt;#include&amp;lt;cstring&amp;gt;#include&amp;lt;string&amp;gt;#include&amp;lt;cmath&amp;gt;#inc

2017-02-17 11:28:31 478

转载 struct 与 typedef struct 的区别

转载自:http://www.cnblogs.com/qyaizs/articles/2039101.htmlstruct 和 typedef struct分三块来讲述:  一、首先:     //注意在C和C++里不同      在C中定义一个结构体类型要用typedef:     typedef struct Student 

2017-02-14 19:35:21 160

Android应用源码仿暴风影音安卓客户端源码1

2017-05-02

Android例子源码仿支付宝手势密码的功能实现

2017-05-02

山寨版flappy_bird源码

山寨版flappy_bird源码

2017-05-02

noip(1995-2011)普及组复赛试题及测试数据

noip(1995-2011)普及组复赛试题及测试数据

2017-05-02

机器学习实战源代码

2017-05-02

Android案例源码--基于Bmob的及时聊天案例源码

如题,资源为Android案例源码--基于Bmob的及时聊天案例源码,欢迎下载

2015-09-26

C语言100个算法经典例题

如题,C语言100个算法经典例题,对C和算法感兴趣的可以下载使用。由于某些原因,文档还有不足,大家见谅

2015-09-19

空空如也

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

TA关注的人

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