诺诺

小酒窝日常

DFS

深度优先搜索以深度为关键词 每次沿着路径前进到不能再前进时才退回到最近的岔道口。思路:将经过的顶点设置成已访问,下次碰到这个顶点就不再去处理 直到整个图的顶点都被标记。n件物品 背包容量V 每件物品重量存w【maxn】 每件物品价值存c【maxn】 问不超过容量下的最大价值思路:index为当前正...

2018-03-31 18:52:48

阅读数:43

评论数:0

紫书 STL初步

检索int p = lower_bound(a,a+n,x)-a;//因为是返回位置所以要减掉起始位置Vector 不定长数组a.size()读大小,a.resize()改变大小,a.push_back()向尾部添加元素,a.pop_back()删除最后一个元素 empty()测试是否为空vect...

2018-03-31 13:10:35

阅读数:24

评论数:1

第八届 蓝桥 A组C++

https://blog.csdn.net/mylegendarytime/article/details/79316518第一题:数的时候先数第一行U的 再数能到达U的   再数最后一行带D的 能到达D的   第一列带L的           能到达L的    最后一列带R的      能到达R...

2018-03-31 13:10:21

阅读数:16

评论数:1

PAT B1019/A1069 数字黑洞

思路: 1 需要两个函数 int型整数转换成int型数组的to_array,(即把每一位都当成数组的一个元素)                                   int型数组转换成int型整数的to_number。           2 写一个while循环,对每层循环:用to...

2018-03-30 22:05:17

阅读数:17

评论数:0

PAT B1045 快速排序

嘤 不能暴力做 会超时。。。

2018-03-30 22:03:49

阅读数:25

评论数:0

打表 PATB1040/A1093 有几个PAT

思路:先写好输入暴力会超时 所以想别的办法 比如可以找A 对每个A,看A前面有几个P,后面有几个T,P和T的乘积就是形成PAT的个数。怎么获得每个A左边的P:设定一个数组LeftNumP,从左到右遍历字符串,若当前位i是P,那么leftNumP【i】就等于leftNumP[i-1]+1。如果当前位...

2018-03-30 21:31:39

阅读数:22

评论数:0

two pointers

归并排序快速排序

2018-03-28 22:54:32

阅读数:29

评论数:0

二分

二分查找二分法拓展

2018-03-28 22:53:22

阅读数:21

评论数:0

贪心

局部最优待补接月饼#include <cstdio> #include <algorithm> using namespace std; struct mooncake{ double store;//库存...

2018-03-27 08:26:16

阅读数:19

评论数:0

递归

分治分治法分解出的子问题应该是相互独立没有交叉的,如果存在两个子问题有相交的部分,就不应当用分治法。递归反复调用自身函数 递归边界和递归式全排列(Full Permutation)把1-n个整数按某个顺序摆放的结果称为这n个整数的一个排列,全排列是所有整数的排列。n个数有n!种全排列思路: 输出1...

2018-03-27 08:24:59

阅读数:28

评论数:0

散列

1.散列的定义及整数散列给出N个正整数,再给出M个正整数。问这M个数中的每个数分别是否在N中出现过。(M,N不超过10的5次方)思路:      设定一个bool型数组 hashTable[100010],hashTable[x]==true说明正整数x在N中出现过。一开始读入的时候就进行赋值为t...

2018-03-26 22:46:31

阅读数:33

评论数:0

[PAT A1025] PAT Ranking

输入输出翻译:输入:第一行:输入考场数目n第二行:输入第一个考场人数k 此处k行    输入准考证号 成绩上面两行的循环  输出:第一行:总人数第二行:准考证号 排名 考场号 考场中的排名     思路:按输入读入,第二行开始是一个循环。结构体存信息,cmp函数中用strcmp&l...

2018-03-24 16:49:29

阅读数:27

评论数:0

排序

排序算法的分类1.插入类直接插入:拿到一个序列 一个个的往里插(摸牌)具体做法一般是从后往前枚举已有序部分确定插入位置int A[maxn],n;//n为元素个数,数组下标1~n void insertSort (){//假设序列{4,5,2} for(int i=2;i&lt...

2018-03-23 17:13:35

阅读数:25

评论数:0

[PAT B1009] 说反话

思路:用空格分隔每个单词 存到二维数组中 最后逆序输出。方法一:过PAT得单点测试 用EOF判断数入完毕,自己黑框手动输入的时候 要用ctrl+z 再按enter告诉系统已经到达EOF,但是我并没有成功。。。#include <cstdio> int...

2018-03-23 10:58:16

阅读数:27

评论数:0

字符串处理 [codeup 5901] 回文串

#include <cstdio> #include <cstring> const int maxn = 256;//先定义好最大值 bool isabc(char str[]){//main方法前写好...

2018-03-23 10:36:33

阅读数:31

评论数:0

进制转换 【PAT B1022】D进制的A+B

日常生活中使用的是十进制,而计算机使用的是二进制,还有八进制 十六进制等,不同进制的区别在于逢几进1。P进制转Q进制第一步:将P进制转换为十进制按权展开,再相加eg:二进制转十进制将P进制数x转换为十进制数y的代码实现//通过设product为1 然后不断与P相乘 达到从零开始的幂次相加的结果in...

2018-03-23 10:21:33

阅读数:65

评论数:0

【codeup 1928】日期差值

思路:求日期相差天数的话,就让少的那个一直加一天 加到多的那个天数为止。具体处理:天数d加了一天后超过当前月m应有的天数时,令月份m+1;别忘了置天数为1号。                 月份m变成13时,令年份y加1 同时设置月份m为1月。                  ***闰年和平年...

2018-03-22 15:21:21

阅读数:17

评论数:0

B1036

*注意!!四舍五入取整!! col(列)是奇数时,行数row就是col/2+1;col是偶数时,row就是col/2。分析一下几部分构成第一行  第2~row-1行 第row行每部分第一行第row行  n个a   一个for循环就行第2~row-1行 先输出一个a 再输出col-2个空格,最后再输...

2018-03-22 10:21:41

阅读数:28

评论数:1

B1001 A+B和C

#include <cstdio> int main() { int T,tcase=1; scanf("%d",&T); while(T--){ long long a,b,c;...

2018-03-21 09:30:35

阅读数:33

评论数:1

【codeup 1934】找x (单纯遍历)

/*如果规定200,数组设定210,防止数组越界(?好像是这样子)多组输入 scanf的返回值是输入值的个数。没有输入值就返回-1。-1按位取反结果是0while(~scanf("%d", &n))就是当没有输入的时候退出循环while(...

2018-03-20 08:23:35

阅读数:47

评论数:0

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