原题链接:排列
不用排序,直接打印。
import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n=sc.nextInt(); for (int count = 0; count < n; count++) { int[]num=new int[4]; for (int i = 0; i < num.length; i++) { num[i]=sc.nextInt(); } for (int a = 0; a<num.length; a++) { for (int b = 0; b< num.length; b++) {if(a==b) continue; for (int c = 0; c < num.length; c++) {if(a==c||b==c) continue; for (int d = 0; d < num.length; d++) { if(a==d||b==d||c==d) continue; if(b>c&&c>d)System.out.print(num[a]*1000+num[b]*100+num[c]*10+num[d]+"\n");//换行 else System.out.print(num[a]*1000+num[b]*100+num[c]*10+num[d]+" "); } } } } if(count!=n-1) System.out.println();//除了最后一组 别的都输出空行 } } }
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复