不过牛客网厉害的还是多啊,思路清晰,代码简洁。自己真的需要学习的有点多。不过后来又回头看了一下《剑指offer》上其实也是这样的。 那就直接复述一遍具体的思路吧:根据设定的整数位置,对n进行分割。 这里就直接选10了,高位是a=n/10,低位是b=n%10,循环条件直接就是n*10了,这样就可以从最后一位到最高位的遍历了。 这里需要考虑的就是,a的最后一位,就是高位对应的最低位。 当i表示百位,且百位对应的数>=2,如n=31456,i=100,则a=314,b=56,此时百位为1的次数有a/10+1=32(最高两位0~31),每一次都包含100个连续的点,即共有(a%10+1) i=1;i<n;i*=10){ int a=n/i,b=n%i; //补8的效果:当百位为0,则a/10==(a+8)/10, //当百位>=2,补8会产生进位位,效果等同于(a/10+1) count+=(a+8)/10*i+(a%10==1)*(b+1); } return
数据范围 2≤T≤100, 2≤N≤10^6 输入样例: 2 6 6 4 11 4 6 4 4 8 8 4 9 6 6 8 2 6 9 3 8 9 输出样例: 10 思路 假设数组d[a][i][
] } for(let key in date) { str = str.replace(key,date[key]) } return str } // 不足10 的前面要加0 const ten = num => num >= 10 ? 获取字符串的长度题目描述 如果第二个参数 bUnicode255For1 === true,则所有字符长度为 1 否则如果字符 Unicode 编码 > 255 则长度为 2 输入 hello world, 牛客 \w+/.test(sEmail)}相关知识点:邮箱格式正则表达式的规则和匹配10.
01-基础查询 SQL1 查询多列 题目地址:查询多列_牛客题霸_牛客网 (nowcoder.com) 题解: SELECT device_id,gender,age,university FROM user_profile SQL2 查询所有列 题目地址:查询所有列_牛客题霸_牛客网 (nowcoder.com) 题解: SELECT * FROM user_profile SQL3 查询结果去重 -DISTINCT 题目地址:查询结果去重_牛客题霸_牛客网 (nowcoder.com) 题解1: SELECT DISTINCT university FROM user_profile 题解2: SELECT university FROM user_profile GROUP BY university SQL4 查询结果限制返回行数-LIMIT 题目地址:查询结果限制返回行数_牛客题霸_牛客网 = "复旦大学" SQL10 用where过滤空值练习-IS NOT NULL 题目地址:用where过滤空值练习_牛客题霸_牛客网 (nowcoder.com) 题解: SELECT device_id
题目 链接:https://ac.nowcoder.com/acm/contest/9715/B 来源:牛客网 给出一个仅包含小写字母的字符串s,你最多可以操作k次,使得任意一个小写字母变为与其相邻的小写字母 示例1 输入 2,"abcde" 返回值 3 示例2 输入 10,"acesxd" 返回值 4 备注: ? 2.
题目:数列还原 题目描述 牛牛的作业薄上有一个长度为 n 的排列 A,这个排列包含了从1到n的n个数,但是因为一些原因,其中有一些位置(不超过 10 个)看不清了,但是牛牛记得这个数列顺序对的数量是 k 每个测试用例的第一行包含两个整数 n 和 k(1 <= n <= 100, 0 <= k <= 1000000000),接下来的 1 行,包含 n 个数字表示排列 A,其中等于0的项表示看不清的位置(不超过 10
原题链接 牛客网 替换空格 ---- 二. 解题思路 1.
题目 链接:https://ac.nowcoder.com/acm/contest/10325/A 来源:牛客网 现在给定一个数组arr,和a,b两个数字,你要做的就是找到(i,j,k)。
方法名(等同于函数名)可以相同,只要保证形参类型不同就可以了,无关返回值; 7、java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式; 例如平时有这样的用法: for(int i=0;i<10
题目:分田地 输入描述: 每个输入包含 1 个测试用例。每个测试用例的第一行包含两个整数 n 和 m(1 <= n, m <= 75),表示田地的大小,接下来的 n 行,每行包含 m 个 0-9 之间的数字,表示每块位置的价值。 输出描述: 输出一行表示牛牛所能取得的最大的价值。 示例1 输入 4 4 3332 3233 3332 2323 输出 2 解答 N, M = [int(each) for each in input().split()] mat = [[int(each) for each in
把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。
示例1 输入 4 1 2 3 10 输出 1 2 1 2 1 3 8 1 6 2 10 3 7 4 9 5 题目解析: 构造队列 利用逆向思维, 题目中的操作是,把队首元素移到队尾,然后弹出队首元素
问题描述 最近由于期末考试结束,时间也相对比较轻松,所以最近去看了一下牛客网上面的一些题,偶尔做了一些练习题,对之前的知识点有一个复习。 java.util.Arrays; import java.util.List; /** * @author guijun * @version 1.0 * @date 2020/7/10
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
详情可参考文档中的解释: Using a trailing comma for a singleton tuple:a,or(a,) 10.
ning 70 yang 50 感觉好坑啊,也没人说要永远循环下去呀~· 可能是我读题脑子有问题 1 2 3 4 5 6 7 8 9 10
小易邀请你玩一个数字游戏,小易给你一系列的整数。你们俩使用这些整数玩游戏。每次小易会任意说一个数字出来,然后你需要从这一系列数字中选取一部分出来让它们的和等于小易所说的数字。 例如: 如果{2,1,2,7}是你有的一系列数,小易说的数字是11.你可以得到方案2+2+7 = 11.如果顽皮的小易想坑你,他说的数字是6,那么你没有办法拼凑出和为6 现在小易给你n个数,让你找出无法从n个数中选取部分求和的数字中的最小数(从1开始)。
题目描述 输入一个链表,反转链表后,输出新链表的表头。 解法1 /* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Solution { public ListNode ReverseList(ListNode head) { if(head =