小 R 正在学习字符串处理。小 X 给了小 R 一个字符串 s,其中 s 仅包含小写英文字母及数字,且包含至少一个 1∼9 中的数字。小 X 希望小 R 使用 s 中的任意多个数字,按任意顺序拼成一个正整数。注意:小 R 可以选择 s 中相同的数字,但每个数字只能使用一次。例如,若 s 为 1a01b,则小 R 可以同时选择第 1,3,4 个字符,分别为 1,0,1,拼成正整数 101 或 110;但小 R 不能拼成正整数 111,因为 s 仅包含两个数字 1。小 R 想知道,在他所有能拼成的正整数中,最大的是多少。你需要帮助小 R 求出他能拼成的正整数的最大值。 输入格式 输入的第一行包含一个字符串 s,表示小 X 给小 R 的字符串。 输出格式 输出一行一个正整数,表示小 R 能拼成的正整数的最大值。c++
```cpp #include <iostream> #include <string> #include <algorithm> using namespace std; int main() { string s; cin >> s; string digits; // 提取字符串中的数字 for (char c : s) { if (isdigit(c) && c != '0') { digits += c; } } // 对提取的数字进行降序排序 sort(digits.begin(), digits.end(), greater<char>()); // 统计字符串中 0 的数量 int zeroCount = 0; for (char c : s) { if (c == '0') { zeroCount++; } } // 如果有非零数字,在排序后的数字后面添加所有的 0 if (!digits.empty()) { digits.append(zeroCount, '0'); } else { // 如果没有非零数字,最大的正整数就是 0 digits = "0"; } // 输出结果 cout << digits << endl; return 0; } ``` 代码解释: 1. 提取数字:通过遍历输入的字符串 `s`,将其中的非零数字添加到 `digits` 字符串中。 2. 排序:使用 `sort` 函数对 `digits` 字符串中的字符进行降序排序,以确保数字从大到小排列。 3. 统计 0 的数量:再次遍历字符串 `s`,统计其中 0 的数量。 4. 处理 0:如果 `digits` 不为空,在排序后的数字后面添加所有的 0;如果 `digits` 为空,说明没有非零数字,最大的正整数就是 0。 5. 输出结果:将最终的字符串 `digits` 输出。 复杂度分析: - 时间复杂度:$O(n log n)$,主要是排序操作的时间复杂度。 - 空间复杂度:$O(m)$,其中 $m$ 是字符串中数字的数量。 [2025-11-02 19:31:09 | AI问答 | 482点数解答]
- [字节豆包] 题目描述 小 R 正在学习字符串处理。小 X 给了小 R 一个字符串 s s,其中 s s 仅包含小写英文字母及数字,且包含至少一个 1 ∼ 9 1∼9 中的数字。小 X 希望小 R 使用 s s 中的任意多个数字,按任意顺序拼成一个正整数。注意:小 R 可以选择 s s 中相同的数字,但每个数字只能使用一次。例如,若 s s 为 1 a 01 b 1a01b,则小 R 可以同时选择第 1 , 3 , 4 1,3,4 个字符,分别为 1 , 0 , 1 1,0,1,拼成正整数 101 101 或 110 110;但小 R 不能拼成正整数 111 111,因为 s s 仅包含两个数字 1 1。小 R 想知道,在他所有能拼成的正整数中,最大的是多少。你需要帮助小 R 求出他能拼成的正整数的最大值。 输入格式 输入的第一行包含一个字符串 s s,表示小 X 给小 R 的字符串。 输出格式 输出一行一个正整数,表示小 R 能拼成的正整数的最大值。(336点数解答 | 2025-11-02 19:21:57)53
- [字节豆包] 题目描述 小 R 正在学习字符串处理。小 X 给了小 R 一个字符串 s s,其中 s s 仅包含小写英文字母及数字,且包含至少一个 1 ∼ 9 1∼9 中的数字。小 X 希望小 R 使用 s s 中的任意多个数字,按任意顺序拼成一个正整数。注意:小 R 可以选择 s s 中相同的数字,但每个数字只能使用一次。例如,若 s s 为 1 a 01 b 1a01b,则小 R 可以同时选择第 1 , 3 , 4 1,3,4 个字符,分别为 1 , 0 , 1 1,0,1,拼成正整数 101 101 或 110 110;但小 R 不能拼成正整数 111 111,因为 s s 仅包含两个数字 1 1。小 R 想知道,在他所有能拼成的正整数中,最大的是多少。你需要帮助小 R 求出他能拼成的正整数的最大值。 输入格式 输入的第一行包含一个字符串 s s,表示小 X 给小 R 的字符串。 输出格式 输出一行一个正整数,表示小 R 能拼成的正整数的最大值。c++(211点数解答 | 2025-11-02 19:22:17)55
- [DeepSeek] 小 R 正在学习字符串处理。小 X 给了小 R 一个字符串 s,其中 s 仅包含小写英文字母及数字,且包含至少一个 1∼9 中的数字。小 X 希望小 R 使用 s 中的任意多个数字,按任意顺序拼成一个正整数。注意:小 R 可以选择 s 中相同的数字,但每个数字只能使用一次。 例如,若 s 为 1a01b,则小 R 可以同时选择第 1,3,4 个字符,分别为 1,0,1,拼成正整数 101 或 110;但小 R 不能拼成正整数 111,因为 s 仅包含两个数字 1。小 R 想知道,在他所有能拼成的正整数中,最大的是多少。 你需要帮助小 R 求出他能拼成的正整数的最大值。 输入 输入的第一行包含一个字符串 s,表示小 X 给小 R 的字符串。 输出 输出一行一个正整数,表示小 R 能拼成的正整数的最大值。 样例输入 复制 290es1q0 样例输出 复制 92100 提示 【样例 2 解释】 s 包含数字 2,9,0,1,0。可以证明,小 R 拼成的正整数的最大值为 92100。 设 ∣s∣ 为字符串 s 的长度。对于所有测试数据,保证: 1≤∣s∣≤10 6 ; s 仅包(647点数解答 | 2026-01-05 12:09:53)21
- [字节豆包] 小 R 正在学习字符串处理。小 X 给了小 R 一个字符串 s,其中 s 仅包含小写英文字母及数字,且包含至少一个 1∼9 中的数字。小 X 希望小 R 使用 s 中的任意多个数字,按任意顺序拼成一个正整数。注意:小 R 可以选择 s 中相同的数字,但每个数字只能使用一次。例如,若 s 为 1a01b,则小 R 可以同时选择第 1,3,4 个字符,分别为 1,0,1,拼成正整数 101 或 110;但小 R 不能拼成正整数 111,因为 s 仅包含两个数字 1。小 R 想知道,在他所有能拼成的正整数中,最大的是多少。你需要帮助小 R 求出他能拼成的正整数的最大值。 输入格式 输入的第一行包含一个字符串 s,表示小 X 给小 R 的字符串。 输出格式 输出一行一个正整数,表示小 R 能拼成的正整数的最大值。(315点数解答 | 2025-11-02 19:30:00)51
- [字节豆包] 小 R 正在学习字符串处理。小 X 给了小 R 一个字符串 s,其中 s 仅包含小写英文字母及数字,且包含至少一个 1∼9 中的数字。小 X 希望小 R 使用 s 中的任意多个数字,按任意顺序拼成一个正整数。注意:小 R 可以选择 s 中相同的数字,但每个数字只能使用一次。例如,若 s 为 1a01b,则小 R 可以同时选择第 1,3,4 个字符,分别为 1,0,1,拼成正整数 101 或 110;但小 R 不能拼成正整数 111,因为 s 仅包含两个数字 1。小 R 想知道,在他所有能拼成的正整数中,最大的是多少。你需要帮助小 R 求出他能拼成的正整数的最大值。 输入格式 输入的第一行包含一个字符串 s,表示小 X 给小 R 的字符串。 输出格式 输出一行一个正整数,表示小 R 能拼成的正整数的最大值。c++(482点数解答 | 2025-11-02 19:31:09)53
- [字节豆包] 题目描述 小 R 正在学习字符串处理。小 X 给了小 R 一个字符串 s,其中 s 仅包含小写英文字母及数字,且包含至少一个 1∼9 中的数字。小 X 希望小 R 使用 s 中的任意多个数字,按任意顺序拼成一个正整数。注意:小 R 可以选择 s 中相同的数字,但每个数字只能使用一次。例如,若 s 为 1a01b,则小 R 可以同时选择第 1,3,4 个字符,分别为 1,0,1,拼成正整数 101 或 110;但小 R 不能拼成正整数 111,因为 s 仅包含两个数字 1。小 R 想知道,在他所有能拼成的正整数中,最大的是多少。你需要帮助小 R 求出他能拼成的正整数的最大值。 输入格式 输入的第一行包含一个字符串 s,表示小 X 给小 R 的字符串。 输出格式 输出一行一个正整数,表示小 R 能拼成的正整数的最大值。c++(441点数解答 | 2025-11-08 20:56:33)56
- [字节豆包] 小 R 正在学习字符串处理。小 X 给了小 R 一个字符串 s,其中 s 仅包含小写英文字母及数字,且包含至少一个 1 ∼ 9 中的数字。小 X 希望小 R 使用 s 中的任意多个数字,按任意顺序拼成一个正整数。注意:小 R 可以选择 s 中相同的数字,但每个数字只能使用一次。例如,若 s 为 1a01b,则小 R 可以同时选择第 1 , 3 , 4 个字符,分别为 1 , 0 , 1 ,拼成正整数 101 或 110;但小 R 不能拼成正整数 111 ,因为 s 仅包含两个数字 1。小 R 想知道,在他所有能拼成的正整数中,最大的是多少。你需要帮助小 R 求出他能拼成的正整数的最大值。 (403点数解答 | 2026-01-11 14:17:23)19
- [字节豆包] RSA加密算法步骤: 1. 取 ,还要选取一个数 ,要求 ; 注意1: 注意2: 2. 取原文: To be or not to be 变成数字串: 84 111 32 98 101 32 111 114 32 110 111 116 32 116 111 32 98 101 a1 a2 a3 a4 a5 .... 3. 加密后的 : 72 45 98 32 62 98 45 49 98 33 45 129 98 129 45 98 32 62 4. 如何解密呢? 输入 读入加密的一段数字,按照题目给定的公钥 , 钥进行解密。 样例输入 复制 60 4 121 99 98 121 45 39 98 119 45 45 4 80 110(948点数解答 | 2026-01-25 21:12:39)31
- [字节豆包] using namespace std; int main(){ int n,m,k; cin>>n>>m>>k; int a[110][110],b[110][110],c[110][110]; for(int i=0; i<n; i++){ for(int j=0; j<m; j++){ cin>>a[i][j]; } } for(int i=0; i<m; i++){ for(int j=0; j<k; j++){ cin>>b[i][j]; } } for(int i=0; i<n; i++){ for(int j=0; j<k; j++){ c[i][j]=0; for(int q=0; q<m; q++){ c[i][n]+=a[i][q]*b[q][j]; } } } for (int i = 0; i < n; i++) { for (int j = 0; j < k; j++) { if (j != k - 1) { (673点数解答 | 2025-12-01 14:12:52)32
- [字节豆包] 题目(description): 卫星导航系统(如我国自主研发的北斗卫星导航系统)能实时获取位置、速度、时间等时空信息,在交通运输、农林渔业、气象测报、通信授时、救灾减灾、公共安全等领域都得到了广泛应用。 在应用层面,卫星导航系统一般以报文方式进行数据传输,其中$gprmc是常用报文之一,基本的格式如下: $gprmc,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh <1> utc时间,hhmmss.sss(时分秒.毫秒)格式 <2> 定位状态,a=有效定位,v=无效定位 <3> 纬度ddmm.mmmm(度分)格式 <4> 纬度半球n(北半球)或s(南半球) <5> 经度dddmm.mmmm(度分)格式 <6> 经度半球e(东经)或w(西经) <7> 地面速率(000.0~999.9节) <8> 地面航向(000.0~359.9度,以正北为参考基准) <9> utc日期,ddmmyy(日月年)格式 <10> 磁偏角(000.0~180.0度,前面的0也(385点数解答 | 2025-01-08 03:43:54)431
- [字节豆包] 题目(description): 卫星导航系统(如我国自主研发的北斗卫星导航系统)能实时获取位置、速度、时间等时空信息,在交通运输、农林渔业、气象测报、通信授时、救灾减灾、公共安全等领域都得到了广泛应用。 在应用层面,卫星导航系统一般以报文方式进行数据传输,其中$gprmc是常用报文之一,基本的格式如下: $gprmc,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh <1> utc时间,hhmmss.sss(时分秒.毫秒)格式 <2> 定位状态,a=有效定位,v=无效定位 <3> 纬度ddmm.mmmm(度分)格式 <4> 纬度半球n(北半球)或s(南半球) <5> 经度dddmm.mmmm(度分)格式 <6> 经度半球e(东经)或w(西经) <7> 地面速率(000.0~999.9节) <8> 地面航向(000.0~359.9度,以正北为参考基准) <9> utc日期,ddmmyy(日月年)格式 <10> 磁偏角(000.0~180.0度,前面的0也(346点数解答 | 2025-01-08 03:46:29)425
- [字节豆包] 提示信息: 密码锁:由 n 个从左到右并排的圆环组成,每个圆环上都有 10 个数字(0~9),蓝色框内为密码显示区,每个圆环在密码显示区只能显示一个数字,如图所示。可以拨动圆环,来改变密码显示区显示的数字。 当密码显示区的数字与密码一致时,密码锁就会被打开。 image 编程实现: 有一个由 n 个圆环组成的密码锁,和一个 n 位的密码 S(S 由 1~9 中的数字(包含 1 和 9)组成)。每次操作只能选择一个或位置连续的多个圆环拨动。当 S 中的字符从左到右依次显示在密码显示区时,密码锁会被打开。 已知每个圆环在密码显示区初始数字都为 0,请计算最少需要操作多少次,才能打开密码锁。 注意: 1、如果选择了其中一个圆环,可将该圆环中任意一个数字拨动到密码显示区,表示 1 次操作; 例如:将第 3 个圆环拨动到数字 4,表示 1 次操作: image 2、如果选择了位置连续的多个圆环,只能将这些圆环拨动成同一个数字,显示在密码显示区,表示 1 次操作。 例如:将连续的第 2 个到第 3 个圆环都拨动到数字 5,表示 1 次操作: image 例如: n = 5,S (377点数解答 | 2025-11-08 22:11:16)88