![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
刷题笔记
文章平均质量分 67
不会算法的数学小白
这个作者很懒,什么都没留下…
展开
-
LeetCode 391:完美矩形
LeetCode 391:完美矩形题目给你一个数组 rectangles ,其中 rectangles[i] = [xi, yi, ai, bi] 表示一个坐标轴平行的矩形。这个矩形的左下顶点是 (xi, yi) ,右上顶点是 (ai, bi) 。如果所有矩形一起精确覆盖了某个矩形区域,则返回 true ;否则,返回 false解题思路精准覆盖的所代表的意义:(1)矩形区域中不能有空缺,即矩形区域的面积等于所有矩形的面积之和;(2)矩形区域中不能有相交区域。那么难点在于怎么判断没有相交原创 2021-11-20 17:29:52 · 189 阅读 · 0 评论 -
leetcode1218:最长定差子序列
leetcode1218:最长定差子序列思路:动态规划我们从左往右遍历arr,并计算出以arr[i] 为结尾的最长的等差子序列的长度,取所有长度的最大值,即为答案,使用dp[i]表示arr[i]为结尾的最长的等差子序列的长度,我们可以在 arr[i] 左侧找到满足 arr[j]=arr[i]−d 的元素,将 arr[i] 加到以arr[j] 为结尾的最长的等差子序列的末尾,这样可以递推地从dp[j] 计算出 dp[i]。由于我们是从左往右遍历arr 的,对于两个相同的元素,下标较大的元素对应的dp原创 2021-11-05 19:22:36 · 103 阅读 · 0 评论 -
【2021】牛客模考(五模)编程题集合
【2021】牛客模考(五模)编程题集合第一题原创 2021-09-24 09:35:52 · 393 阅读 · 0 评论 -
每日刷题
牛客求平方根题目实现函数 int sqrt(int x).计算并返回x的平方根(向下取整)输入输出格式输入2返回值1思路题目吧这道题目划给二分题型,但是简单的直接使用二分求解感觉太捞了,经过简单的思考我发现,可以直接使用等差数列求和的方式来做,也就是反向使用等差数列求和公式codingclass Solution {public: /** * * @param x int整型 * @return int整型 */原创 2021-03-30 01:30:16 · 159 阅读 · 0 评论 -
2021美团校招(一)
小美的送花路线输入描述输出第一行包含一个正整数n,即花店和客户的总数。(1<=n<=30000)接下来有n-1行,每行有三个整数u,v,w,表示在u和v之间存在一条距离为w的道路。(1<=w<=1000)输出描述输入51 2 31 3 11 4 22 5 1输出10 10思路深度搜索就完事了coding#include <bits/stdc++.h>using namespace std;int main() {原创 2021-03-28 00:52:30 · 1477 阅读 · 0 评论 -
京东2019年春招题(前端)
京东2019年春招题最长区间思路:把字符串与自身拼接,找新字符串中的连续1的区间长度,考虑原字符串全为1或全为0的情况,coding#include<bits/stdc++.h>using namespace std;int main(){ string s,t; int n,r=0; cin>>s; t=s+s; n=t.length(); for(int i=0;i<n;i++){原创 2021-03-23 19:14:20 · 197 阅读 · 0 评论 -
湘大刷题笔记
湘大刷题笔记P1031 机器翻译描述小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章。这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换。对于每个英文单词,软件会先在内存中查找这个单词的中文含义,如果内存中有,软件就会用它进行翻译;如果内存中没有,软件就会在外存中的词典内查找,查出单词的中文含义然后翻译,并将这个单词和译义放入内存,以备后续的查找和翻译。假设内存中有M个单元,每单元能存放一个单词和译义。每当软件将一个新单词存入内存前,如果当前内存原创 2021-03-19 02:30:01 · 287 阅读 · 0 评论 -
2015年中南大学复试机试
2015年中南大学复试机试第一题:好坑的电子地图题目描述:小明是今年参加复试的外校考生,他要去民主楼小礼堂签到。由于对中南大学校本部很不熟悉,小明找到了这边读书的好朋友鲁大师,不巧,鲁大师在忙着自由探索项目的结题工作,不能给他带路,只好给他发了一份半成品的电子地图。地图上只列出了校本部内的N个点,M条路,小明处于S点,民主楼小礼堂是T点。小明感谢鲁大师,当然只是在拿到地图的一瞬间,后面的情况让他知道这半成品到底有多坑。鲁大师制作的电子地图是带有语音提示功能的,但是在编号为奇数的点他要等1分钟才能告诉原创 2021-02-08 18:02:42 · 366 阅读 · 0 评论 -
PIPIOJ :1207 PIPI打怪
1207 PIPI打怪题目描述思路题目乍一看都没懂为啥两颗子弹就能打死一个血量12的野怪,然后仔细一想,发现这不就是一个套娃吗?出现死亡一个人就得人均扣两滴血,然后判断一下本次反弹是否出现野怪死亡,如果反弹期间也出现野怪死亡,就每只野怪再扣两滴血直到不出现野怪死亡算一颗子弹的威力,如果还有野怪存活就再来一发,直至所有野怪都被打死,所实话,这子弹挺离谱的。coding#include<bits/stdc++.h>using namespace std;typedef long原创 2021-02-07 18:47:15 · 634 阅读 · 0 评论 -
2014年中南大学上机复试
2014年中南大学复试机试第一题:成绩转换题目描述:某地区中考实行等级选拔制,为此需要将相应科目的卷面计分成绩转换为相应的等级。假设门课程卷面总分 120 分,根据考试情况,各等级划线情况如下:108~120 为 A;100~107 为 B;80~99 为 C;72~79 为 D;0~71 为 E;输入数据有多组,每组占一行,由一个整数组成。对于每组输入数据,输出一行。如果输入数据不在 0~120 范围内,请输出一行:“Score is error!”。输入输出格式:输入:原创 2021-02-06 19:22:50 · 246 阅读 · 2 评论 -
2013年中南大学复试机试
2013年中南大学复试机试第一题:回文串问题题目描述:“回文串”是一个正读和反读都一样的字符串,字符串由数字和小写字母组成,比如“level”或者“abcdcba”等等就是回文串。请写一个程序判断读入的字符串是否是“回文”。输入包含多个测试实例,每一行对应一个字符串,串长最多100字母。对每个字符串,输出它是第几个,如第一个输出为"case1: “;如果一个字符串是回文串,则输出"yes”,否则输出"no",在yes/no之前用一个空格。输入输出格式:输入:levelabcdeno原创 2021-02-04 23:29:43 · 213 阅读 · 0 评论 -
数据结构练习题----单链表篇(一)
第一题有一个带头结点的单链表L,设计一个算法使其元素递增有序思路先将链表的数据复制到数组中,然后再数组中使用八大排序中的任意一种进行排序,然后再使用尾插法插入到链表当中Void sort(LinkList &L){ LNode *p=L->next,*pre; LNode *r=p->next,* p->next = NULL; p=r; while(pre->next!=NULL&&pre->next->data<原创 2020-10-08 15:28:19 · 734 阅读 · 0 评论 -
Leetcode(每日一题)
最长重复子数组题目描述:思路分析:动态规划直接秒杀(思想见上一篇博客华为机试(二))直接上代码:class Solution {public: int findLength(vector<int>& A, vector<int>& B) { int n = A.size(), m = B.size(); vector<vector<int>> dp(n + 1, vector<原创 2020-09-15 14:59:30 · 274 阅读 · 0 评论 -
剑指offer-链表中环的入口结点
剑指offer-链表中环的入口结点题目:思路:快慢指针判断是否存在环,然后再写一个函数用来判断环的大小即可下面解释一下什么是快慢指针:快慢指针说的通俗一点就是一个两个人比赛跑步,一个人一次就跑一格,另外一个人一次跑多格,然后如果比赛开始后两个人又重新相遇了,说明跑得快的人已经领先另外一个人一整圈了,如果两个人一直无法相遇直到终点(不存在环的时候认为直线存在终点)。图解图一:图二:所以上代码:/*struct ListNode { int val; struct原创 2020-08-06 22:58:39 · 102 阅读 · 1 评论 -
(牛客网)华为机试(三)
(牛客网)华为机试题集解答HJ102 字符统计思路分析:看到这道题目我们的第一想法就是开两个数组来分别存每个字符出现的次数,和对应次数上的字符,让字符次数相同的位置再将对应的字符进行ASII码来比较一下大小,想法听起来很棒,但是具体实现的时候就发现逻辑上越写越复杂,所以我决定索性用map来直接操作,将字符和次数直接作为一对捆绑的关系来处理,开始遍历一次str使用map保存每个char出现的次数,以char为键,int为值,然后遍历一次map使用treemap保存每个char的次数,以int为键,ch原创 2020-07-17 12:12:03 · 1320 阅读 · 0 评论 -
(牛客网)华为机试(二)
(牛客网)华为机试题集解答在解题前先分享一波oj刷题的固定格式代码,方便输入时使用import java.util.*;import java.io.*;public class Main{ //一定要使用Main作为类名 public static void main(String args[]){ Scanner scanner = new Scanner(System.in); while(scanner.hasNext()){原创 2020-07-14 00:46:33 · 2220 阅读 · 0 评论 -
(牛客网)华为机试(一)
华为机试解答第一题 HJ108求最小公倍数:直接gcd解决#include<iostream>using namespace std;int gcd(int a,int b) //求最大公约数函数{ int r; while(b) { r=a%b; a=b; b=r; } return a;}int main(){ int a,b,g; while(scanf("%d%d",&a,&a原创 2020-07-12 19:26:31 · 15688 阅读 · 0 评论 -
HOJ刷题笔记
HOJ1004首次看题真的一脸懵逼,什么鬼,这是要我们干嘛。然后我们看到题目的输入与输出就会发现就是先规定一个固定大小的收纳字符串的空间,然后再将出现最多的字符串输出就好了。弄懂了题目就会发现这道题目很简单了。直接暴力求解,将字符串转换为一个一个数字元素,然后再对其进行计数,最后将最大数对应的字符串输出,然后有一种特殊情况要注意,如果出现多个字符串出现的次数相同且是最多次数时,我们将手动输...原创 2019-11-06 00:28:08 · 895 阅读 · 0 评论