【java】素数环
来源:互联网 发布:大数据的技术人员要求 编辑:程序博客网 时间:2024/06/06 13:58
输入正整数n,把整数1,2,3,...,n组成一个环,使得相邻两个整数之和均为素数,输出从整数1开始逆时针排列。同一个环应该只输出一次。n<=16.
样例输入:
6
样例输出:
1 4 3 2 5 6
1 6 5 2 3 4
import java.util.Arrays;import java.util.Scanner;public class Main {public static void search(int[] res,int[]visited,int n,int cursor){if(cursor==n&&isPrime(res[0]+res[n-1])){StringBuffer str=new StringBuffer();for(int i:res){str.append(i+" ");}System.out.println(str.substring(0,str.length()-1));return;}for(int i=2;i<=n;i++){if(visited[i-1]==0){if(cursor>0){if(!isPrime(i+res[cursor-1]))continue;}res[cursor]=i;visited[i-1]=1;search(res,visited,n,cursor+1);visited[i-1]=0;}}}public static boolean isPrime(int n){if(n==1)return false;boolean flag=true;for(int i=2;i<=Math.sqrt(n);i++){if(n%i==0){flag=false;break;}}return flag;}public static void main(String[] args){Scanner scanner = new Scanner(System.in);while(scanner.hasNext()){int n=scanner.nextInt();int[] res=new int[n];int[] visited=new int[n];res[0]=1;Arrays.fill(visited,0);search(res,visited,n,1);}scanner.close();}}
0 0
- 【java】素数环
- 趣味素数-素数 java
- 素数环问题(Java)
- 素数环(java实现)
- Java 素数
- 素数--java
- java素数
- java素数
- java素数
- Java 素数
- java 素数
- 趣味素数-孪生素数-java
- 趣味素数-可逆素数-java
- 趣味素数-回文素数-java
- Java队列递归求解素数环问题
- 素数环
- 素数环
- 素数环
- 安装yii2.0 advanced
- Codeforces 343 D Water Tree
- struts对于servlet的访问方式
- 申请iServer许可
- 检测USB设备的插入和拔出
- 【java】素数环
- Satisfactory Pairs (HackerRank pairs-again)
- 今天没及时吧脑海里的东西记下来……
- Mybatis原理,优缺点,以及与Hibernate的比较
- RxJava 官方文档中文翻译
- Linux游戏<帝国时代(O.A.D)>汉化教程
- 调用系统相册选取照片并使用系统裁剪图片
- ios控制器之间传值-通知传值
- 在linux上创建定时任务