华为OD机试 2024E卷题库疯狂收录中,刷题 <a rel="nofollow" href="https://blog.csdn.net/qq_40374604/category_12822407.html" style="color: red;">点这里</a>。
实战项目访问:http://javapub.net.cn/
专栏导读
本专栏收录于 《华为OD机试(JAVA)真题(E卷+D卷+A卷+B卷+C卷)》 。
刷的越多,抽中的概率越大,私信javapub,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天CSDN在线答疑。
参数解析
在命令行输入如下命令: xcopy s c:\\ d:\\e, 各个参数如下: 参数1:命令字xcopy 参数2:字符串s 参数3:字符串c:\\ 参数4: 字符串d:\\e 请编写一个参数解析程序,实现将命令行各个参数解析出来。 解析规则: 1.参数分隔符为空格 2.对于用""包含起来的参数,如果中间有空格,不能解析为多个参数。比如在命令行输入xcopy s "C:\\program files" "d:\"时,参数仍然是4个,第3个参数应该是字符串C:\\program files,而不是C:\\program,注意输出参数时,需要将""去掉,引号不存在嵌套情况。 3.参数不定长 4.输入由用例保证,不会出现不符合要求的输入
数据范围:字符串长度:
数据范围:字符串长度: 1≤s≤1000
进阶:时间复杂度: O(n) ,空间复杂度: O(n)
输入描述:
输入一行字符串,可以有空格
输出描述:
输出参数个数,分解后的参数,每个参数都独占一行
示例1
输入
xcopy /s c:\\ d:\\e
输出
4
xcopy
/s
c:\
d:\\e
Java 编程
package cn.net.javapub.javaintroduction.example;
/**
* @author: shiyuwang
* @url: http://javapub.net.cn
*/
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s;
while ((s = br.readLine()) != null) {
char[] chars = s.toCharArray();
StringBuffer ana = new StringBuffer();
int flag = 0;
int count = 1;
for (int i = 0; i < chars.length; i++) {
if (chars[i] == '\"') {
flag++;
continue;
}
if (chars[i] != ' ') {
ana.append(chars[i]);
}
if (chars[i] == ' ' && flag % 2 != 0) {
ana.append(chars[i]);
}
if (chars[i] == ' ' && flag % 2 == 0) {
ana.append("\n");
count++;
}
}
System.out.println(count + "\n" + ana.toString());
}
}
}
展示效果:

🏆下一篇: 华为OD机试 - 计算日期到天数转换 (Java 2024 E卷 100分)](https://blog.csdn.net/qq_40374604/article/details/144005471) 🏆本文收录于, 搬砖工逆袭Java架构师
刷的越多,抽中的概率越大,私信javapub,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天CSDN在线答疑。
优质合集推荐
《突击面试》Java面试题合集
《面试1v1》
《编程工作总结》


















