初学算法竞赛qwq
一个咸鱼的自我救赎
柳学家
吐槽名字你就输了(▰˘◡˘▰)
展开
-
leetcode-184周赛(KMP/暴力+暴力+暴力+dp)
第一题-暴力(string中的find)原题地址给你一个字符串数组 words ,数组中的每个字符串都可以看作是一个单词。请你按 任意 顺序返回 words 中是其他单词的子字符串的所有单词。如果你可以删除 words[j]最左侧和/或最右侧的若干字符得到 word[i] ,那么字符串 words[i] 就是 words[j] 的一个子字符串。示例 1:输入:words = ...原创 2020-04-13 02:14:34 · 174 阅读 · 0 评论 -
leetcode-每日一题-翻转字符串里的单词
给定一个字符串,逐个翻转字符串中的每个单词。示例 1:输入: "the sky is blue"输出:"blue is sky the"示例 2:输入: " hello world! "输出:"world! hello"解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例 3:输入: "a good example"输出:"e...原创 2020-04-10 01:02:51 · 443 阅读 · 0 评论 -
POJ1004——Financial Management
http://poj.org/problem?id=1004DescriptionLarry graduated this year and finally has a job. He's making a lot of money, but somehow never seems to have enough. Larry has decided that he needs to gra...原创 2019-05-16 18:06:30 · 132 阅读 · 0 评论 -
POJ——Parencodings
http://poj.org/problem?id=1068DescriptionLet S = s1 s2...s2n be a well-formed string of parentheses. S can be encoded in two different ways:q By an integer sequence P = p1 p2...pn where pi is the...原创 2019-05-15 22:55:28 · 77 阅读 · 0 评论 -
poj1017——Packets
http://poj.org/problem?id=1017DescriptionA factory produces products packed in square packets of the same height h and of the sizes 1*1, 2*2, 3*3, 4*4, 5*5, 6*6. These products are always delivere...原创 2019-05-14 17:41:04 · 110 阅读 · 0 评论 -
开新坑——【poj】Hangover
How far can you make a stack of cards overhang a table? If you have one card, you can create a maximum overhang of half a card length. (We're assuming that the cards must be perpendicular to the table...原创 2019-05-13 20:16:53 · 142 阅读 · 0 评论 -
Winner Winner——状压dp(待定)
题目描述The FZU Code Carnival is a programming competetion hosted by the ACM-ICPC Training Center of Fuzhou University. The activity mainly includes the programming contest like ACM-ICPC and strive to p...原创 2019-05-03 00:54:20 · 166 阅读 · 0 评论 -
Melody
题目描述YellowStar is versatile. One day he writes a melody A = [A1, ..., AN], and he has a standard melody B = [B1, ..., BN]. YellowStar can split melody into several parts, it can be expressed as: K...原创 2019-05-02 23:55:26 · 201 阅读 · 0 评论 -
Thanks, TuSimple!
原文题目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4090In the very first sentence of the very first problem, we would like to give our sincere thanks to TuSimple, the sponsor of this ...原创 2019-04-21 20:48:30 · 153 阅读 · 0 评论 -
leetcode-每日一题-面试题13. 机器人的运动范围(BFS)
地上有一个m行n列的方格,从坐标 [0,0] 到坐标 [m-1,n-1].一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为3+5+3+7=18。但它不能进入方格 [35, 38],因为3+5+3+8=19。请问该机器人能够到达...原创 2020-04-08 00:45:40 · 345 阅读 · 0 评论 -
leetcode-每日一题-生命游戏(矩阵总结)
根据百度百科,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1 即为活细胞(live),或 0 即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律:如果活细胞周围八个位置的活细胞数少于两个,则该位置活...原创 2020-04-02 01:01:08 · 508 阅读 · 0 评论 -
leetcode-每日一题与周赛(182)-车的可用捕获量
周赛第一题—找出数组中的幸运数在整数数组中,如果一个整数的出现频次和它的数值大小相等,我们就称这个整数为「幸运数」。给你一个整数数组 arr,请你从中找出并返回一个幸运数。如果数组中存在多个幸运数,只需返回 最大 的那个。如果数组中不含幸运数,则返回 -1 。示例 1:输入:arr = [2,2,3,4]输出:2解释:数组中唯一的幸运数是 2 ,因为数值 2 的出现频次...原创 2020-03-31 12:27:32 · 192 阅读 · 0 评论 -
leetcode-每日一题-车的可用捕获量
话说最近的每日一题都有点像阅读理解???在一个 8 x 8 的棋盘上,有一个白色车(rook)。也可能有空方块,白色的象(bishop)和黑色的卒(pawn)。它们分别以字符 “R”,“.”,“B” 和 “p” 给出。大写字符表示白棋,小写字符表示黑棋。车按国际象棋中的规则移动:它选择四个基本方向中的一个(北,东,西和南),然后朝那个方向移动,直到它选择停止、到达棋盘的边缘或移动到同一方...原创 2020-03-26 01:25:15 · 128 阅读 · 0 评论 -
leetcode-每日一题-三维形体的表面积
说实在的,看了半天硬是没看懂题意,看了一下评论后,恍然大悟,看来还是我天资愚钝啊qwq这里先复制一下题目在N*N的网格上,我们放置一些1 * 1 * 1的立方体。每个值v = grid[i][j]表示v个正方体叠放在对应单元格(i, j)上。请你返回最终形体的表面积。输入:[[2]]输出:10输入:[[1,2],[3,4]]输出:34这里...原创 2020-03-25 09:34:04 · 129 阅读 · 0 评论 -
LeetCode—拼写单词
还是有必要写一下的,用到了一个map,所以我打算来记录一下;https://leetcode-cn.com/problems/find-words-that-can-be-formed-by-characters/给你一份『词汇表』(字符串数组)words和一张『字母表』(字符串)chars。假如你可以用chars中的『字母』(字符)拼写出 words中的某个『单词』(字符...原创 2020-03-18 01:10:45 · 77 阅读 · 0 评论 -
算法基础—数据结构—树
我们就先从树的储存看起吧。以字母为例,先建立一个根节点,然后向右创建子节点,并在最后的字符串的结尾处进行标记。好了,上模板代码(取自AcWing)int son[N][26], cnt[N], idx;// 0号点既是根节点,又是空节点// son[][]存储树中每个节点的子节点// cnt[]存储以每个节点结尾的单词数量// 插入一个字符串void insert(c...原创 2020-02-19 19:49:40 · 148 阅读 · 0 评论 -
算法基础—数据结构—kmp
很抽象直接看模板吧q'w'q关于kmp的模板(取自AcWing)// s[]是长文本,p[]是模式串,n是s的长度,m是p的长度求模式串的Next数组:for (int i = 2, j = 0; i <= m; i ++ ){ while (j && p[i] != p[j + 1]) j = ne[j]; if (p[i] == p...原创 2020-02-14 22:51:39 · 80 阅读 · 0 评论 -
算法基础—数据结构—栈与队列
栈——先进后出;队列——先进先出;这两个模型应该都不会陌生,并且有相关的头文件可以直接调用,但是,这里依旧是拿数组进行模拟;先来看栈的相关模板(取自AcWing)// tt表示栈顶int stk[N], tt = 0;// 向栈顶插入一个数stk[ ++ tt] = x;// 从栈顶弹出一个数tt -- ;// 栈顶的值stk[tt];// 判断栈是否为空...原创 2020-02-14 22:08:11 · 123 阅读 · 0 评论 -
算法基础—数据结构—双链表
双链表顾名思义就是一个从左到右的指针和一个从右到左的指针。这里列一些模板// e[]表示节点的值,l[]表示节点的左指针,r[]表示节点的右指针,idx表示当前用到了哪个节点int e[N], l[N], r[N], idx;//初始化void intx(){ //0是左端点,1是右端点 l[1] = 0; r[0] = 1; idx = 2;}//删除int ...原创 2020-02-14 18:23:35 · 199 阅读 · 0 评论 -
算法基础—数据结构—单链表
对于链表我想大家应该都不陌生,但是再算法里面,一般以静态链表为准(数组模拟链表)。主要是因为快,这个也没什么固定的模板,直接根据题目来看吧。https://www.acwing.com/problem/content/828/题目要求就是根据不同的操作来模拟链表,最后遍历输出。#include<bits/stdc++.h>using namespace std;co...原创 2020-02-14 13:45:36 · 141 阅读 · 0 评论 -
算法基础模板—二分
二分的思想很简单,就是对半砍,但是会有很多边界问题让人头大,这里我们先来看一下模板代码(取自AcWing)bool check(int x){ //检查x是否满足某种性质 }//区间[l,r]被划分为[l,mid]和[mid+1,r]时使用;int bsearch_1(int l,int r){ while(l<r){ int mid = l+r >> 1;...原创 2020-02-13 20:25:40 · 99 阅读 · 0 评论 -
基础算法模板—归并排序
归并和快速的不同是,快速排序是先划分后递归,而归并先递归后合并。归并排序也大体可以分为三步;1.确定分界点;2.就是递归分左右;3.合二为一;(这里还是用算法动画图解演示)分界点我们一般取中间;依此类推,之后在不停的分分成单个的之后就是合二为一以升序合并;最后在合并一下即可;代码如下(取自AcWing)void merge_sort(int q[],int...原创 2020-02-13 18:01:47 · 127 阅读 · 0 评论 -
基础算法模板—快速排序
首先是快排的模板,但是在说快排模板之前还是说一下快排的原理会好一些。之前已经写过很多关于快速排序的例题了,不过有些时候因为懒所以就用sort直接过来了qwq,这里用到了算法动画图解来做样例。首先,我们要确定三个点,一个是最左端的左标记,另一个是最右端的右标记,还有一个mid,mid这个可以随意取值,不过我一般习惯取中间(但是图中的样例是以最右为取值,这个都无所谓的);然后左标记开始...原创 2020-02-13 13:10:31 · 254 阅读 · 0 评论 -
数据结构基础—树和二叉树——Trees on the level
https://vjudge.net/problem/UVA-122紫皮书P150页,题目有些长就复制了qwq这个题的题目很好看懂,用代码实现的话可能有些难,当时看了一边书还是不太懂em.......先挖个坑吧(虽然坑已经挺多的了)#include<bits/stdc++.h>#include<queue>using namespace std;vec...原创 2019-09-03 18:09:59 · 270 阅读 · 0 评论 -
数据结构基础—树和二叉树——Boxes in a Line
https://vjudge.net/problem/UVA-12657You have n boxes in a line on the table numbered 1 . . . n from left to right. Your task is to simulate 4kinds of commands:• 1 X Y : move box X to the left to ...原创 2019-09-03 17:59:57 · 145 阅读 · 0 评论 -
排序,字符串——拼数
https://www.luogu.org/problemnew/show/P1012根据题意可以看出只要把数比较然后排序就好了,em.....感觉不是很难可以用string直接进行sort排序即可,然后用bool判断数。#include<bits/stdc++.h>using namespace std;string a[20];bool cmp(string ...原创 2019-04-14 11:39:28 · 134 阅读 · 0 评论