头秃的算法
该说些什么呢
星星遇坠
少年不惧岁月长,彼方尚有荣光在
展开
-
单词的压缩编码
单词数组 words 的 有效编码 由任意助记字符串 s 和下标数组 indices 组成,且满足:words.length == indices.length助记字符串 s 以 ‘#’ 字符结尾对于每个下标 indices[i],s 的一个从 indices[i] 开始、到下一个 ‘#’ 字符结束(但不包括 ‘#’)的 子字符串 恰好与 words[i] 相等给你一个单词数组 words ,返回成功对 words 进行编码的最小助记字符串 s 的长度 。示例 1:输入:words = ["原创 2021-06-13 16:13:00 · 259 阅读 · 0 评论 -
无重复字符的最长子串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: s = "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: s = "pwwkew"输出: 3解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。 请注意,你的答案必须是 子串 的长度,"pwke" 是原创 2021-06-13 14:52:37 · 85 阅读 · 0 评论 -
贪心+二分实现最长递增子序列,时间复杂度T(n)=O(nlog(n))
题目描述给定数组arr,设长度为n,输出arr的最长递增子序列。(如果有多个答案,请输出其中字典序最小的)示例1输入[2,1,5,3,6,4,8,9,7]返回值[1,3,4,8,9]示例2输入[1,2,8,6,4]返回值[1,2,4]代码如下:import java.util.*;public class Solution { /** * retrun the longest increasing subsequence * @p原创 2021-04-08 16:39:39 · 135 阅读 · 0 评论 -
牛客网的刷题之旅——2020/8/6
机器人走方格II题目链接:https://www.nowcoder.com/questionTerminal/b3ae8b9782af4cf29253afb2f6d6907d题目描述有一个XxY的网格,一个机器人只能走格点且只能向右或向下走,要从左上角走到右下角。请设计一个算法,计算机器人有多少种走法。注意这次的网格中有些障碍点是不能走的。给定一个int[][] map(C++ 中为vector >),表示网格图,若map[i][j]为1则说明该点不是障碍点,否则则为障碍。另外给定int x原创 2020-08-08 18:35:39 · 350 阅读 · 0 评论 -
牛客网的刷题之旅——2020/7/30
寻宝题目链接:https://www.nowcoder.com/questionTerminal/59aff3b7a9094432893302c9ee7794e8题目描述亮亮解出了卷轴隐藏的秘密,来到了一片沼泽地。这里有很多空地,而面试直通卡可能埋在任意一块空地中,好在亮亮发现了一堆木材,他可以将木材铺在两个空地之间的沼泽地上。因为亮亮不知道面试直通卡具体在哪一块空地中,所以必须要保证任意一块空地对于亮亮来说是可以抵达的。 “怎么还有鳄鱼!没办法,看来有些空地不能直接到达了。” 亮亮虽然没有洁癖,但是原创 2020-08-02 17:12:31 · 185 阅读 · 0 评论 -
牛客网的刷题之旅——2020/7/27
链表的回文结构题目链接:https://www.nowcoder.com/questionTerminal/d281619e4b3e4a60a2cc66ea32855bfa题目描述对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。给定一个链表的头指针A,请返回一个bool值,代表其是否为回文结构。保证链表长度小于等于900。测试样例:1->2->2->1返回:true思路:第一次做这种直接在类里面写代码的题目,这里原创 2020-07-29 20:15:17 · 263 阅读 · 0 评论 -
牛客网的刷题之旅——2020/7/19
https://www.nowcoder.com/questionTerminal/ff74b3d786de4a30b4cd49b8ad97467f原创 2020-07-25 17:52:26 · 170 阅读 · 0 评论 -
牛客网的刷题之旅——2020/7/16
打印二维数组题目链接:https://www.nowcoder.com/questionTerminal/0f68b27998c042549dd2ba40d83ace27题目描述给定一个空的int类型的二维数组array[m][n]。按下面的填充规则, 请编写一个函数将此二维数组填满并打印出来.输入描述:输入的包括两个正整数,表示二维数组的大小n,m(1 <= n, m <= 10)。输出描述:打印结果,每行行末无空格。输入4 4输出1 2 4 73 5 8 1原创 2020-07-17 15:46:06 · 179 阅读 · 0 评论 -
牛客网的刷题之旅——2020/7/12
字符串替换题目链接:https://www.nowcoder.com/questionTerminal/f409e49e3f3e4b68819ffceb50df7df5?answerType=1&f=discussion题目描述给定一个仅由小写字母x和y组成且长度不超过105的字符串,每次可以将字符串中的一个子串xy替换成字符串yyx,那么至少要替换多少次才能让字符串中不存在子串xy?输入描述:输入给定的字符串。输出描述:输出最少替换次数对109+7取模后的结果。输入xxy原创 2020-07-15 17:06:55 · 169 阅读 · 0 评论 -
牛客网的刷题之旅——2020/7/10
最佳配对题目链接:https://www.nowcoder.com/questionTerminal/8baf0ea64dcb42258746f72224f8c4f5题目描述给定两个长度为N的整型数组A和B。如果Ai==Bj则认为(i,j)为最佳配对。所有的最佳配对在满足以下条件的情况下组成最佳配对集合:A和B中的各个元素最多在集合中出现一次。例如,A =「5, 10, 11,12, 14」,B = 「8, 9 ,11, 11, 5」,配对集合为「(0,4),(2,2),(2,3)」,因为在集合A中原创 2020-07-11 15:55:58 · 197 阅读 · 1 评论 -
NC13222 ——音乐研究
链接:https://ac.nowcoder.com/acm/problem/13222来源:牛客网题目描述美团外卖的品牌代言人袋鼠先生最近正在进行音乐研究。他有两段音频,每段音频是一个表示音高的序列。现在袋鼠先生想要在第二段音频中找出与第一段音频最相近的部分。具体地说,就是在第二段音频中找到一个长度和第一段音频相等且是连续的子序列,使得它们的 difference 最小。两段等长音频的 difference 定义为:difference = SUM(a[i] - b[i])2 (1 ≤ i ≤原创 2020-05-13 21:36:25 · 464 阅读 · 0 评论 -
NC15758 ——火车上的2连座
链接:https://ac.nowcoder.com/acm/problem/15758来源:牛客网题目描述程序员A和B要去一起坐火车,这列火车上的每一排都有4个座位,而且这四个座位被过道分成了两半。当A和B到了车上时,一些位子已经有人了。A和B是好基友,于是他们想要找一对连在一起的座位。两个连在一起的座位是同一排但是不被过道隔开的两个座位。给定一列火车上的座位情况,请你寻找一下能否找到一对连座?输入描述:每组样例第一行为一个整数n,1<=n<=1000,表示火车一共有n排座位。原创 2020-05-13 11:47:12 · 1042 阅读 · 0 评论 -
NC15759——程序员的好印象
链接:https://ac.nowcoder.com/acm/problem/15759来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K,其他语言65536K64bit IO Format: %lld题目描述有一个程序员做过 n 个项目,他想要跳槽,因此他想要给面试官留下一个好印象。于是他想使自己看起来很有潜力也相应的会有竞争力,于是他决定从自己以前做过的N个成功或者失败的项目里不改变原来的时间顺序从中选择若干个项目,使得他展示出来的任意一个成功的项目之后都原创 2020-05-13 11:28:42 · 326 阅读 · 0 评论 -
NC25147——金币馅饼
链接:https://ac.nowcoder.com/acm/problem/25147来源:牛客网题目描述最近,奶牛们热衷于把金币包在面粉里,然后把它们烤成馅饼。第i块馅饼中含有Ni(1<=Ni<=25)块金币,并且,这个数字被醒目地标记在馅饼表面。奶牛们把所有烤好的馅饼在草地上排成了一个R行(1<=R<=100)C列(1<=C<=100)的矩阵。你现在站在坐标为(1,1)的馅饼边上,当然,你可以拿到那块馅饼里的所有金币。你必须从现在的位置,走到草地的另一边,在原创 2020-05-12 23:39:16 · 156 阅读 · 0 评论 -
NC15558——取手机
链接:https://ac.nowcoder.com/acm/problem/15558来源:牛客网题目描述durong有a台iphonex和b台s8,并且放在一个保险箱里,durong现在一台一台从保险箱随机拿出这些手机,现在他想知道第k次拿出s8的概率是多少输入描述:第一行一个正整数T,表示数据组数。(1<=T<=10000)接下来T行输入a,b,k其中(1<=a,b,k<=1e9) k<=a+b;输出描述:第k次拿出s8的概率,保留三位小数示例1输入原创 2020-05-12 23:12:48 · 146 阅读 · 0 评论