中兴笔试 中兴秋招 中兴笔试题 0925

笔试时间:2025年9月25日

往年笔试合集:

2023春招秋招笔试合集

2024春招秋招笔试合集

第一题

题目描述: 给定一个正整数及非负整数 nums 的列表,第一个正整数表示 nums 列表中数字的总个数,需要将 nums 列表中数据排列组合出一个最大的数并返回它。

输入描述

输入两行数字,第一行仅有一个数字,代表待组合数据的总个数,第二行是待组合的数字的集合,数据之间使用空格间隔

输出描述

输出能组成最大的值

样例输入

3

1 3 2

样例输出

321

参考题解

解题思路:这道题的目的是将给定的数字列表重新排列,组合成一个最大的整数。关键在于自定义排序规则:

  • 对于任意两个数字 a 和 b,如果将它们转换成字符串后,a+b(字符串拼接)大于 b+a(字符串拼接),那么在最终结果中,a 就应该排在 b 的前面
  • 例如:3 和 30 组合,可以是 330 或 303。因为 330 > 303,所以 3 应该排在 30 的前面
  • 处理特殊情况:如果结果全是0,应该返回"0"而不是"00"

C++:

#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;

int main() {
    int n;
    while (cin >> n) {
        vector<string> numsStr(n);
        for (int i = 0; i < n; i++) {
            cin >> numsStr[i];
        }
        
        // 自定义排序
        sort(numsStr.begin(), numsStr.end(), [](const string& s1, const string& s2) {
            return s1 + s2 > s2 + s1;
        });
        
        // 拼接结果
        string result = "";
        for (const string& s : numsStr) {
            result += s;
        }
        
        // 处理特殊情况
        if (result[0] == '0') {
            cout << "0" << endl;
        } else {
            cout << result << endl;
        }
    }
    return 0;
}

Java:

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            // 1. 读取输入
            int n = Integer.parseInt(scanner.nextLine());
            String[] numsStr = scanner.nextLine().split(" ");
            
            // 2. 自定义排序
            Arrays.sort(numsStr, (s1, s2) -> (s2 + s1).compareTo(s1 + s2));
            
            // 3. 拼接结果
            StringBuilder sb = new StringBuilder();
            for (String s : numsStr) {
                sb.append(s);
            }
            String result = sb.toString();
            
            // 4. 处理特殊情况
            if (result.startsWith("0")) {
                System.out.println("0");
            } else {
 

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

2025 春招笔试合集 文章被收录于专栏

2025打怪升级记录,大厂笔试合集 C++, Java, Python等多种语言做法集合指南

全部评论

相关推荐

09-10 11:50
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务