前言
以前一直在leetcode上刷编码题,今天转到了牛客上,刷题规则与leetcode上有有些许差别,基本是输入和输出的差别,经过本人实验,将规则写出来做个记录,以便下次在牛客刷题忘记有个参考,这里主要以我常用和熟悉的语言:python,matlab,以及C#为例来说明。
题目
描述
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。
(注:字符串末尾不以空格为结尾)
输入描述:
输入一行,代表要计算的字符串,非空,长度小于5000。
输出描述:
输出一个整数,表示输入字符串最后一个单词的长度。
解答
matlab语言
intput_string = input('', "hello nowcoder"); % 输入
string_num = strsplit(intput_string, ' '); % 按空格分割
last_word = string_num(1, end); % 最后一个,是cell格式
lastWordLength = length(last_word{1}); % 用花括号取即为字符串
printf("%d\n", lastWordLength); % 格式输出
运行结果:![在这里插入图片描述](https://img-blog.csdnimg.cn/0b2546fba5c34cd8af72eadd6f0fcbc7.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd2luZGF3ZGF5c3Nz,size_14,color_FFFFFF,t_70,g_se,x_16)
python3语言
import sys
for line in sys.stdin:
string_word = line.split()
print(len(string_word[-1]))
运行结果:
C#语言
public class Programm
{
public static void Main()
{
string line;
while((line = System.Console.ReadLine()) != null) // 连续输入
{
string[] words = line.Split();
System.Console.WriteLine(words[words.Length-1].Length);
}
}
}
运行结果:
结论
目前先写下这三种语言,等以后学到新语言再更新,可以看到主要区别在于输入和输入需要自己按照标准去写,和leetcode中只需要写出完整的函数体不一样,只要掌握这个规则,就可以再牛客上愉快的刷题了。