03 2021 档案
摘要:#离散化的概念 题目给出范围很大但数据数量很少的一组数据,通过离散化将大的下标的值赋值给新的较小的连续的下标,从而讲一个范围很大的数据合集装进一个小的容器中。 ##离散化模板 vecrot<int> alls; // 储存所有待离散化的值 sort(alls.begin(),alls.end());
阅读全文
摘要:关于auto 1.auto可以自动识别所接收变量的类型,不用自己再指定改变量的类型。 2.for(auto a:b) 可以拷贝并遍历a容器里的所有数据,但是不能修改。 3.for(auto &a:b) 可以遍历a容器里的所有数据并且可以修改。 需要注意的auto使用事项。 使用auto对某一容器进行
阅读全文
摘要:#简单的两种位运算模板 ###取n的第k位数 n右移k位与上1 n >> k & 1; ###返回第一个1以及后面的数 n与上n的补码(即负数n)或n与上n的反码 + 1; lowbit(n) = n & -n = n & (~n + 1);
阅读全文
摘要:#双指针模板 while(j < n&&check(i,j)) j ++; //根据题意处理 #目的 优化算法时空复杂度 #小例题 讲一句英文短句拆分成若干单词输出 代码 #include<iostream> #include<string.h> using namespace std; int m
阅读全文
摘要:前缀和的简单学习 一维计算公式s[r] - s[l - 1] ###简单模板运用(一维) 题目 输入一个长度为 n 的整数序列。 接下来再输入 m 个询问,每个询问输入一对 l,r。 对于每个询问,输出原序列中从第 l 个数到第 r 个数的和。 #include<iostream> using na
阅读全文
摘要:quick_sort模板 void quick_sort(int q[] ,int l ,int r){ //不满足条件直接返回 if( l >= r ) return; //建议取l + r >> 1,避免边界问题 int x = q[l + r >> 1],i = l -1,j = r + 1;
阅读全文
摘要:#二分法模板一 int l = 0, r = n - 1; while(l < r){ int mid = l + r >> 1; if(num[mid] >= target) r = mid; else l = mid + 1; } // l即为所求边界 //找的是等于target的第一个数或者大
阅读全文
摘要:#写在前面 应用了vector头文件#include<vector> vector基本操作: (1)头文件#include. (2)创建vector对象,vector vec; (3)尾部插入数字:vec.push_back(a); (4)使用下标访问元素,cout<<vec[0]<<endl;记住
阅读全文
摘要:本次学到知识点:qsort pta例题 7-5 资料整理 题解 #include<stdio.h> #include<stdlib.h> typedef struct{ int id; int cla; char name[16]; }Stu; int cmp2(const void *pa,con
阅读全文
摘要:关于python考核的第一次作业 GITHUB HERE Here to my github 任务耗时 一整天 我做了什么? 爬取了指定题目集的题目名字和题目编号 了解了网页异步加载可能会对爬取数据造成的影响 了解了但没有使用如何绕过图形验证码的方法 安装了MySQL数据库和Navicat for
阅读全文