酷代码 AI
菜单

c++题目描述 现有一个正整数 n n 请判断 n n 是否为 3 , 5 , 7 3,5,7 的倍数 输入格式 一行,一个正整数 n n。 输出格式 判断 n n 是否为 3 , 5 , 7 3,5,7 的倍数,若是则输出对应的数字,否则不输出,注意输出时,如果有多个满足的数字,数字之间需要使用一个英文逗号间隔 input1 复制 9 output1 复制 3 input2 复制 70 output2 复制 5,7 input2 复制 210 output2 复制 3,5,7 数据规模与约定 对于 100 % 100% 的数据, 1 ≤ n ≤ 1000 1≤n≤1000。

以下是解决该问题的C++代码: ```cpp #include <iostream> #include <vector> #include <string> int main() { int n; // 读取输入的正整数n std::cin >> n; std::vector<int> multiples; // 判断n是否为3的倍数 if (n % 3 == 0) { multiples.push_back(3); } // 判断n是否为5的倍数 if (n % 5 == 0) { multiples.push_back(5); } // 判断n是否为7的倍数 if (n % 7 == 0) { multiples.push_back(7); } std::string output; for (int i = 0; i < multiples.size(); ++i) { if (i > 0) { output += ","; } output += std::to_string(multiples[i]); } // 输出结果 std::cout << output << std::endl; return 0; } ``` 代码解释: 1. 输入读取:使用`std::cin`读取用户输入的正整数`n`。 2. 倍数判断:分别判断`n`是否为3、5、7的倍数,如果是则将对应的数字存入`multiples`向量中。 3. 结果输出:将`multiples`向量中的数字用英文逗号连接成一个字符串`output`,并输出该字符串。 复杂度分析: - 时间复杂度:$O(1)$,因为只进行了固定次数的判断和操作。 - 空间复杂度:$O(1)$,最多存储3个数字,空间开销是固定的。 [2026-01-24 20:20:54 | AI问答 | 409点数解答]

服务商
相关提问
发财导航,免费问AI
实用工具查看更多