自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HDU - 5246,dfs新手易犯的问题

#include <stdio.h> #define N 10000 #include <stdbool.h> #include <string.h> bool flag=false; void dfs(int min,int n,int k,int m,int a[],int book[],int tq){ if(k<0) k=0;//保持k大于等于0 if(tq==n){//边界 flag=true; return; } for(int i=0;

2020-11-30 23:33:39 73

原创 看似难实际很操蛋的自然常数与阶乘取模的数论问题

#include <cstdio> typedef long long i64; int main() { i64 n, p; scanf("%lld%lld", &n, &p); i64 t = 0, pr = 1; for (int j = p; j >= 0; pr = (pr * j--) % n) t = (t + pr) % n; printf("%lld\n", t); return 0; .

2020-11-30 17:26:11 155

原创 位运算经典题目

#include <cstdio> int main() { char table[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; int n; scanf("%d", &n); int a[100]; for (int i = 0; i < n; i++) { scanf("%d", a + i); } ..

2020-11-30 17:08:28 135

原创 科克曼女生问题C语言

利用深度优先做出来了。 #include <stdio.h> #include <stdbool.h> int arr[8][16],p[6]={0,1,4,7,10,13}; bool book[16][16],use[8][16]; void dfs(int day,int group){ if(day==8){ for(int i=1;i<=7;i++){ for(int j=1;j<=15;j++){ printf("%3d",arr[i][.

2020-11-27 12:22:40 906

原创 list列表学习

链表的核心是一个双向链表 list的数据元素是通过指针串联成的逻辑意义上的线性表 优点:在链表的任一位置进行元素的插入、删除操作都是快速的。 list每个节点有三个域:前驱元素指针域、数据域、后继元素指针域。 头节点的前驱元素指针域保存的是尾元素的首地址,尾结点的后继元素指针域保存的是头节点的首地址。 list实际上构成了双向链表链 list元素节点不要求在连续的内存中,list不支持快速随机存取。 迭代器,只能通过“++”或“–”操作将迭代器移动到后继/前驱节点元素处。而不能对迭代器进行+n或-n的操作,

2020-11-14 17:30:27 128

原创 string类基本用法

//:字符串 #include <iostream> #include <string> using namespace std; int main() { string str1; str1 = "1234546ssshhhhh"; string str2 = "i love you"; string str3 = str1 + " " + str2; string str5(str3); cout << str1 << endl; cout

2020-11-14 16:54:35 90

原创 string类学习

string 类不是STL容器,但是和STL容器有很多相似 c++中的string类与char*的字符串相比,不必担心内存,字符串长度等 作为一个类,所包含的操作函数很多 需要声明<string>头文件 声明字符串:string str; string类不必担心最后的'\0' 只能用+添加元素,不能用-删去元素 ...

2020-11-14 16:40:22 63

原创 vector学习

vector(向量)是一种数据结构,确切的说是一个类,相当于一个动态的数组。 向量是一种容器,容器中还有list,deques 无需定义向量的大小。当不知道数组规模多大时,可以用向量解决问题,避免空间资源的浪费。 向量vector和string一样,都属于STL(标准模板库)中的自定义数据类型,就是一个不需初始化大小的数组。 向量的定义: 可以用数组初始化向量: 向量的输入输出用法与数组无异 元素的输出,可以使用遍历器,begin();begin()+n;end()都表示元素的位.

2020-11-14 15:18:19 73

原创 一维向量vector几乎所有用法

//:vector的使用练习 #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> vec1(10,4); int size1 = vec1.size(); //确定vec1的大小 cout << " vec1.capacity()= " << vec1.ca

2020-11-14 14:30:53 1131

原创 LC25题关于链表,补充了指针数组以及循环大法

LeetCode题目提醒收纳 第25. K 个一组翻转链表 本题还是用到链表,考察的是链表指针的变换; 这一题的特点就是根据体型设置了结构指针数组用以存储,十分方便! 不再用担心计算次数; 题目 K 个一组翻转链表 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 k 是一个正整数,它的值小于或等于链表的长度。 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 示例: 给你这个链表:1->2->3->4->5 当 k = 2 时,应当返回: 2-&

2020-11-14 10:14:31 78

原创 LC27数组内元素的去除精妙算法

27。移除元素 题目: 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素 给定 nums = [0,1,2,2,3,0,4,2], val = 2, 函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。 注意这五个元素可为任意顺序。 你不需要考虑数组中超出新长度后面的元素。 看起来很简单,但是笨人用笨方法 先看看大佬的,直接覆盖,清晰明了 in

2020-11-14 10:14:08 87

原创 KMP算法

KMP算法,即从文本串S[]中找到与模式串P[]匹配的最前位置。 平时利用的暴力匹配算法,需要对S[]进行遍历,先找到S[]中与P[0]相同的元素,再看S[]之后的元素与P[0]之后的所有元素是否完全匹配。如果不匹配,则回溯到与P[0]对应的S[]元素的下一位继续进行判断,这种把元素察看回溯到最前面再与P[0]进行判断的方法滥用了一部分算法。 KMP算法就是对这一回溯过程进行优化,P[]位置不变,S[]右移一段距离,此时,在该元素之前的S[]中的元素与P[]中的元素已经相等。 利用暴力匹配算法回溯的情况:

2020-11-14 10:13:18 68

空空如也

空空如也

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

TA关注的人

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