无聊的时候 写的 看看吧 #include <stdio.h> #include <iostream> #include <unordered_map> #include <vector> using namespace std; bool IsShuSu(int n) { for (int i = 2; i <= sqrt(n); i++) { if (n %i == 0) { return false; } } return true; } void Print(int n) { vector<int> num; vector<vector<int>> res; for (int i = 2; i < n - 2; i++) { if (IsShuSu(i)) { num.push_back(i); } } for (int i = 0; i < num.size() - 2; i++) { int j = i + 1; int k = num.size() - 1; while (j < k) { if (num[i] + num[j] + num[k] == n) {  vector<int> temp = { num[i], num[j], num[k] }; res.push_back(temp); j++; k--; } else if (num[i] + num[j] + num[k] < n) { j++; } else { k--; } } } if (res.size() == 0) { cout << "No" << endl; } for (int i = 0; i < res.size(); i++) { for (int j = 0; j < res[i].size(); j++) { cout << res[i][j] << " "; } cout << endl; } return; } int main(void) { int n = 0; while (cin >> n) { Print(n); } return 0; }
点赞 评论

相关推荐

迷茫的大四🐶:只有花了钱才能吃一堑长一智
点赞 评论 收藏
分享
05-10 16:48
门头沟学院 Java
程序员小白条:主要原因,投递太晚了,快手应该早点溜了,你都从去年9月开始的,半年也差不多3月跑路了,这样的话,至少有5个以上的面试机会
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务