- 博客(105)
- 收藏
- 关注
原创 Git 常见操作
##Git 常见操作push 代码到仓库git pull origin master --allow-unrelated-histories本地库版本回退git reset --hard 版本号
2022-05-24 19:22:25 114
原创 剑指offer 12:矩阵中的路径 python dfs 解题
题目链接class Solution: def exist(self, board: List[List[str]], word: str) -> bool: M = len(board) N = len(board[0]) vis = [([0]*N) for i in range(M)] ll_word = len(word) okk = 0 //是否找到 dir = [[0, 1],
2022-01-21 20:05:11 476
原创 位运算习题全解
137. Single Number II 位运算解题题目链接重在真值表补充leetcode上的没看明白直接上真值表的代码(学过)class Solution: def singleNumber(self, nums: List[int]) -> int: ones, twos = 0, 0 for num in nums: tt1 = ((~num)&(~twos)&ones | (num&~twos
2022-01-14 17:08:46 253
原创 Python 基础和常用库区别和知识
区别1、numpy可以直接对整个ndarray操作,py需要遍历numpy:arr * arr arr + arrpy:[x*x for x in arr] [x + x for x in arr]2、numpy可以用[ 1,2 ] 这种索引方式 可以选择出[1:, 2:]的数组,注意[1:][2:]和[1:, 2:]的区别,[1:][2:]是先进行左边筛选后再进行右边3、numpy用花式索引无法选出行列子集(行列都需对应,花式索引选出是一维的,一一对应),如果需要选出行列子集,需采
2022-01-05 12:50:12 893
原创 2018南京大学计算机夏令营机试
题目11. Count number of binary strings without consecutive 1’sGiven a positive integer n(3≤n≤90), count all possible distinct binary strings of length n such that there are no consecutive 1's . Input: 2 Output: 3 // The 3 strings are 00, 01, 10
2021-07-18 18:36:44 279
原创 容易忽视的字符串操作
1. 讲输入的每行文本以空格分割为各字符串#include <iostream>#include <string>#include <sstream>using namespace std;int main(){ string str; while(getline(cin,str)) { stringstream ss(str);//构造函数初始化 不能用ss<< 会累加写入 while(ss>>str)
2021-07-17 20:44:28 72
原创 2019年南京大学保研机试
给你一个不超过100位的数n,和一个不超过100的数字k,要求从数n中去掉k个数字,然后使得去掉k个数之后,n最小。 题解链接:https://blog.csdn.net/C20190413/article/details/77368590代码1#include<iostream>using namespace std;#include<cstring>#include<string>#include<vector>...
2021-07-17 20:08:54 322
原创 算法笔记【问题 C: 合唱队形】
题目链接#include<iostream>using namespace std;int N;const int MAXN=10010;int num[MAXN];int decc[MAXN];int incc[MAXN];int main(){ while(scanf("%d",&N),N) { for(int i=1;i<=N;i++) scanf("%d",&num[i]); for(int i=1;i<=N;i
2021-07-16 08:52:05 122
原创 算法笔记【问题 B: 拦截导弹】
问题链接#include<iostream>using namespace std;#include<cstring>const int MAXN=130;int k;int num[MAXN];int dp[MAXN];int main(){ while(scanf("%d",&k),k) { memset(dp,0,sizeof(dp)); for(int i=1;i<=k;i++) { scanf("%d",&num
2021-07-15 20:35:31 115
原创 算法笔记【问题 A: 第二题】
问题链接1.dfs解法#include<iostream>#include<cmath>#include<string>using namespace std;const int MAXN=1005;string str;int num[MAXN];int sum;int minn=sum;int maxnn;int sizee;int ok=1;void dfs(int now,int ss) { if(ok) retu
2021-07-15 20:07:19 89
原创 【PAT A1043】Is it a Binary Search Tree
【PAT A1043】Is it a Binary Search Tree#include<iostream>using namespace std;#include<vector>const int MAXN=1010;int N;int num[MAXN];vector<int> beg,pre,rpre,post,rpost;struct node{ int data; node * leftNode; node * rightNode
2021-07-13 16:14:42 83
原创 OS实验笔记
lINUX:基本操作open函数:第三个参数可以加mode 吗、 0777权力很大O_RDONLY OWRONLY O_RDWR 只能选择一个O_APPEND O_TRUNC 只能选择一个O_CREAT 一般都选read函数:write函数lseek函数
2021-06-16 14:51:44 117
原创 KMP 算法题目及应用
题目链接#include<iostream>using namespace std;const int N=1000010; char str[N]; int ne[N];int n;int main(){ int s=0; while(scanf("%d",&n)==1 && n) { scanf("%s",str+1);// cout<<str+1; ne[1]=0; for(int i=2,j=0;i<=n;
2021-04-20 23:39:04 198 1
原创 Leetcode 802 找到最终安全的状态 拓扑排序/dfs
题目链接及官方题解 class Solution {public: vector<int> eventualSafeNodes(vector<vector<int>>& graph) { int n=graph.size(); vector<vector<int>> rgaph(n,vector<int>()); int indeg[10005];
2021-04-12 20:07:06 95
原创 CCFCSP-201709-3 JSON查询 大模拟
原题链接注意155行,ww=ww.mm[xx[k]] (错误)Obj tt=ww.mm[xx[k]]; (正确)ww=tt;#include<iostream>using namespace std;#include<string>#include<map>#include<vector>int n,m;string text;struct Obj{ //Obj 既可以是str类型,也可以是字典类型 int type; /
2021-04-08 22:05:27 108
原创 CCF-CSP-201903-4 消息传递接口 模拟 递归
原题链接参考思路AC 代码(1):#include<iostream>using namespace std;#include<string>#include<queue>#include<cstring>const int N=10010;int status[N];int T,n;struct Pro{ int num; //发给谁 int op; //0:发送 1:接收 Pro(){ } Pro(int
2021-04-04 16:09:59 146
原创 CCF-CSP 201903-3 损坏的RAID5 -大模拟
原题链接注意(1):fgets的用法,比scanf(%s)快,scanf(%s)会超时,字符长度太长;同时fgets会读入换行符,len记得-1(2)>>符号优先级在+,-运算符后面#include<iostream>using namespace std;#include<cstring>typedef unsigned int UI;const int N=1010,M=40*1024*8+10;int n,s,l;UI disk[N][M/8
2021-03-31 00:33:40 121
原创 单调栈解析以及例题
1.维护递增堆,注意是完全递增(1)从左向右维护,可以找到该数左边第一个比该数小的位置/值(2)从右向左维护,可以找到该数右边第一个比该数小的位置/值e.g:原题链接#include<iostream>#include<cstring>#include<algorithm>using namespace std;const int N=100010;typedef long long LL;LL ans;int h[N],leftt[N],
2021-03-27 00:09:51 76
原创 二叉树 1、给定先序遍历 2、给定先序和中序 3、给定后续和中序 4给定先序和后序
1.二叉树1.1给定先序遍历建立二叉树原题链接#include<iostream>using namespace std;int position;char ss[105];struct TreeNode { char cc; TreeNode * leftNode; TreeNode * rightNode; TreeNode(char c):cc(c),leftNode(NULL),rightNode(NULL){ } };TreeNode * b
2021-03-23 16:09:47 291
原创 CCF-CSP201509-4 高速公路 强连通分量 Tarjan 算法
题目链接Tarjan算法讲解#include<iostream>#include<algorithm>#include<cstring>using namespace std;#define N 10005#define M 100005int n,m;int h[N],e[M],ne[M];int idx;int sta[N];int top;int ans;int indx;int vis_sta[N];int low[N],
2021-03-23 11:06:03 158
原创 中缀表达式 和 后缀表达式求值题解
题目1/2 :中缀表达式求值模板题#include<iostream>using namespace std;#include<string>#include<map>#include<stack>stack<int> num;stack<char> op;map<char,int> grade;void init() //优先级 { grade['-']=2; grade['+'
2021-03-22 14:20:16 130
原创 LeetCode 92 反转链表II 链表
原题链接/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x), next(nullptr) {} * ListNode(int x, ListNode *next) : val(x), next(
2021-03-18 20:30:18 64
原创 CCF-CSP-201803-4 棋局评估 dfs
原题链接#include<iostream>using namespace std;#include<cstring>#define INF 1e7int g[3][3];int eval() //如果有一方赢了,返回得分,若游戏尚未结束 返回INF { int space=0; for(int i=0;i<3;i++) //计算空格数量 { for(int j=0;j<3;j++) { if(g[i][j]==0)
2021-03-18 18:03:11 99
原创 CCF-CSP-201812-3 CIDR合并 大模拟 STL 链表 字符串处理
原题链接#include<iostream>using namespace std;#include<string>#include<cstring>#include<algorithm>#include<list>#define N 100005int n;struct Node{ string ip; //32位 int len=0; Node(){ } int to_Int() { int
2021-03-18 16:22:01 86
原创 CCF-CSP 201903-2 二十四点 模拟 栈 计算表达式
题目链接#include<iostream>using namespace std;#include<stack>#include<string>#include<unordered_map>stack<char> op;stack<int> num;unordered_map<char,int> grades;int n;void eval() //注意对于'/' C++和java是向0取整,p
2021-03-11 22:50:19 141
原创 CCF-CSP 201803-3 URL映射题解 大模拟
题目链接#include<iostream>using namespace std;#include<vector>#include<string>#define N 105int n,m;struct Rules{ //存入规则 string path; string name;}rr[N];string get_del(string xx) //如果不是整数,返回空串,否则返回去除前导0的整数 { for
2021-03-10 21:48:10 211
原创 CCF-CSP 201703-4 地铁修建题解 二分+bfs /kruskal
题目链接方法一:kruskal 算法:如果裸算法求出的最小生成树的最大边也一定最小,本题关键体现在代码65行#include<iostream>#include<algorithm>using namespace std;#define N 100005#define M 200005int fa[N];int n,m;int maxx;struct Eage{ int u,v,w; bool operator< (const Eage
2021-03-10 21:38:04 144
原创 CCF CSP 201609-4交通规划 题解 最短路延申 dijkstra/spfa
题目链接方法1:dijkstra算法思路:dijkstra算法求最短路,但是多了一个cost数组,cost[i] 表示修建到顶点i时,需要新修建的一条边。代码78行表示了最终加的边一定构成最短路,86行保证了在最短路的基础上修建更短的边,111行计算结果即可#include<iostream>using namespace std;#include<cstring>#include<queue> #define N 10005#define M 200
2021-03-06 00:24:03 242
原创 CCF-CSP 201612-3权限查询 大模拟 字符串处理
题目链接模拟思路:map<string,set> role,user; 用map存角色和用户的权限PRE结构体如下:PRE(string nn,int ll){name=nn; //level=ll; //不分权限等级权限为-1}首先对于role,遍历该role的权限,不分权限等级权限直接push到set里面,如果是带等级权限,如果未找到,直接push,否则选择更大的level,没有则不更新其次对于user,遍历用户权限,思路和role差不多查找思路也很简单,可见代码注释
2021-03-05 13:28:52 98
原创 CSP 201609-3 炉石传说 模拟
CSP 201609-3 炉石传说 模拟注意随从是否死亡和死亡后移动位置要在发动攻击后在进行,否则war[ano][dder].life-=war[cur][aker].attack会错误 ,见attack指令代码块建议英雄存在 war[0][0]和war[1][0],方便最后输出时写循环#include<iostream>using namespace std; int star_life[2]; int sum;struct Node{ int life; i
2021-03-03 13:23:32 163
原创 CSP 201609-2 火车购票 模拟
CSP 201609-2 火车购票 模拟#include<iostream>using namespace std;#include<cstring>int n;int tic[105]; //存取每次购票指令int vis[25][8]; //是否该座位已经被购买int main(){ cin>>n; memset(vis,0,sizeof(vis)); for(int i=0;i<n;i++) scanf("%d",&am
2021-03-02 14:20:53 79
原创 CSP 201604-3 路径解析 模拟 字符串处理
CSP 201604-3 路径解析 模拟 字符串处理#include<iostream>using namespace std;#include<vector>#include<string>int p; vector<string> get(string str) //以'/'为分界符,存取字符串 { vector<string> ss; for(int i=0;i<str.size();i++) {
2021-03-02 00:20:19 81
原创 CSP 201604-2 俄罗斯方块 模拟
CSP 201604-2 俄罗斯方块 模拟思路:枚举小方块放到画布的行数并找到小方块放到画布最后一行的行数,即为发生矛盾行数的上一行。当将小方块放到画步,如果最小单位小方块重叠,则矛盾#include<iostream>using namespace std;int GG[15][10];int gg[4][4];int begin_y;int x;int get(int cnt,int x){ for(int G_x=cnt,g_x=x;g_x>
2021-03-01 23:05:07 215
原创 CSP 201509-3 模板生成系统 模拟 字符串处理
CSP 201509-3 模板生成系统 模拟 字符串处理提供两种方法,第二种方法简单一点,直接输出string 各类方法注意:replace 之后,替换后的下标会发生变化第一种方法借助string处理的方法#include<iostream>#include<string>#include<map>using namespace std;int m,n;string text[105];map<string,string> mm;
2021-03-01 13:36:54 111
原创 CSP 201512-3 画图 模拟
CSP 201512-3 画图 模拟注意:注意输入和输出,即数组坐标系和普通坐标系的区别#include<iostream>using namespace std;#include<string>#include<cstring>char GG[105][105];int n,m;int cnt;int dir[4][2]={{-1,0},{1,0},{0,1},{0,-1}};int vis[105][105]; //dfsint i
2021-02-28 22:13:25 66
原创 CSP 201512-4 送货 欧拉通路
CSP 201512-4 送货无向图有欧拉通路的前提:1.为连通图2.奇度顶点为0或者2#include<iostream>using namespace std;#include<set>#define N 10005#define M 100005set<int> g[N]; //set特性 从小到大int sum_odd;int ans[M];int n,m;int top; //模拟栈int fa[N];void d
2021-02-28 22:09:47 132
原创 CCF201503-3 节日 日期模拟
CCF201503-3 节日 日期模拟注意!优先级较高#include<iostream>using namespace std;int mon_each[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};int sum_year[2]={365,366};int a,b,c,y1,y2;bool isRyear(int year){ if
2021-02-28 13:07:49 115
原创 考研机试真题 日期差值 模拟
考研机试真题 日期差值 模拟 注意方法二中sscanf的用法方法一:#include<cstdio>#include<cmath>#include<iostream>using namespace std;char a[8];char b[8];int c[2][13] = { {0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31} };boo
2021-02-26 23:27:55 86
原创 考研机试真题 Day Of Week
考研机试真题 Day Of Week #include<cstdio>#include<cstring>#include<iostream>#include<map>using namespace std;#include<string>map<string, int> mm = { {"January",1}, {"February",2}, {"March",3}, {"April",4}, {"May",5},
2021-02-26 23:25:37 104
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人