牛客网题解
主要练习牛客网ACM模式
Se7en_Dayz
这个作者很懒,什么都没留下…
展开
-
【牛客】HJ9——提取不重复的整数(华为)
【牛客】HJ9——提取不重复的整数(华为)题目描述解题思路代码详解(ACM模式)注意点题目描述输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。保证输入的整数最后一位不是0。输入描述:输入一个int型整数输出描述:按照从右向左的阅读顺序,返回一个不含重复数字的新的整数示例1输入:9876673输出:37689解题思路利用Set的元素不重复特性并倒序遍历即可代码详解(ACM模式)import java.util.*;public class原创 2021-04-07 17:58:50 · 359 阅读 · 1 评论 -
【牛客】HJ8——合并表记录(华为)
【牛客】HJ8——合并表记录(华为)题目描述解题思路代码详解(ACM模式)注意点题目描述数据表记录包含表索引和数值(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。输入描述:先输入键值对的个数然后输入成对的index和value值,以空格隔开输出描述:输出合并后的键值对(多行)示例1输入:40 10 21 23 4输出:0 31 23 4解题思路使用TreeMap,其自带排序,若存在key则valu原创 2021-04-07 13:48:44 · 172 阅读 · 1 评论 -
【牛客】HJ7——取近似值(华为)
【牛客】HJ5——取近似值(华为)题目描述解题思路代码详解(ACM模式)注意点题目描述写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。输入描述:输入一个正浮点数值输出描述:输出该数值的近似整数值示例1输入:5.5输出:6解题思路由于输入是正浮点数,所以原数+0.5后取整即可代码详解(ACM模式)import java.util.Scanner;public class Main { public原创 2021-04-07 11:11:14 · 196 阅读 · 1 评论 -
【牛客】HJ6——质数因子(华为)
【牛客】HJ5——质数因子(华为)题目描述解题思路代码详解(ACM模式)注意点题目描述功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 )最后一个数后面也要有空格输入描述:输入一个long型整数输出描述:按照从小到大的顺序输出它的所有质数的因子,以空格隔开。最后一个数后面也要有空格。示例1输入:180输出:2 2 3 3 5解题思路将数字从2开始做整除,若能整除则把整除后的数覆盖原数,若不能整除则将被除数+1,原创 2021-04-07 11:03:53 · 400 阅读 · 1 评论 -
【牛客】HJ4——字符串分隔(华为)
【牛客】HJ4——字符串分隔(华为)题目描述解题思路代码详解(ACM模式)注意点题目描述连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。输入描述:连续输入字符串(输入多次,每个字符串长度小于100)输出描述:输出到长度为8的新字符串数组示例1输入:abc123456789输出:abc000001234567890000000解题思路可对字符串用charAt()逐个遍历字符再拼接,也可用subst原创 2021-04-07 10:13:15 · 361 阅读 · 0 评论 -
【牛客】HJ2——计算字符个数(华为)
【牛客】HJ2——计算字符个数(华为)题目描述解题思路代码详解(ACM模式)注意点题目描述写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字母,然后输出输入字符串中该字母的出现次数。不区分大小写。输入描述:第一行输入一个由字母和数字以及空格组成的字符串,第二行输入一个字母。输出描述:输出输入字符串中含有该字符的个数。示例1输入:ABCabcA输出:2解题思路用int[26]记录每个字母的出现次数(当然可以先全部转换成大写/小写后再操作)代码详解(ACM模式)p原创 2021-04-06 22:46:20 · 162 阅读 · 0 评论 -
【牛客】HJ1——字符串最后一个单词的长度(华为)
【牛客】HJ1——字符串最后一个单词的长度(华为)题目描述解题思路代码详解注意点题目描述计算字符串最后一个单词的长度,单词以空格隔开。输入描述:输入一行,代表要计算的字符串,非空,长度小于5000。输出描述:输出一个整数,表示输入字符串最后一个单词的长度。示例1输入:hello nowcoder输出:8解题思路从后往前遍历,遇到第一个不是空格的字符串开始算起,直到遇到空格或者字符串开头结束计数。代码详解import java.util.*;public class Ma原创 2021-04-06 22:00:58 · 244 阅读 · 0 评论 -
【牛客】HJ107——求解立方根(华为)
【牛客】HJ107——求解立方根(华为)题目描述解题思路代码详解注意点题目描述计算一个数字的立方根,不使用库函数。保留一位小数。输入描述:待求解参数,为double类型(一个实数)输出描述:输入参数的立方根。保留一位小数。示例1输入:216输出:6.0解题思路利用牛顿迭代法,具体公式:xn+1=xn−f(xn)/f′(xn)x_{n+1}=x_n-f(x_n)/f'(x_n)xn+1=xn−f(xn)/f′(xn)具体到此题,则为xn+1=xn−(xn3−targ原创 2021-04-06 21:39:11 · 325 阅读 · 0 评论 -
【牛客】HJ5——进制转换(华为)
【牛客】HJ5——进制转换(华为)题目描述解题思路代码详解注意点题目描述写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。输入描述:输入一个十六进制的数值字符串。注意:一个用例会同时有多组输入数据。输出描述:输出该数值的十进制字符串。不同组的测试用例用\n隔开。示例1输入:0xA0xAA输出:10170解题思路其实就是直接调用库函数,做此题主要是为了熟练ACM模式的使用。代码详解import java.util.Scanner;public class M原创 2021-04-06 21:28:54 · 1579 阅读 · 0 评论 -
【牛客】HJ22——汽水瓶(华为)
【牛客】HJ22——汽水瓶(华为)题目描述解题思路代码详解(ACM模式)注意点题目描述有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?输入描述:输入文件最多包含10组测试数原创 2021-04-06 21:17:18 · 591 阅读 · 0 评论