From d08b39e9c5345cdb10a8c8e84f1ed8fa9c892f44 Mon Sep 17 00:00:00 2001 From: zeek <984294471@qq.com> Date: Fri, 28 Feb 2020 18:58:13 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BA=A6=E7=91=9F=E5=A4=AB=E7=8E=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- java/.gitignore | 1 + java/bishi/YueSeFuHuan.java | 44 +++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 java/.gitignore create mode 100644 java/bishi/YueSeFuHuan.java diff --git a/java/.gitignore b/java/.gitignore new file mode 100644 index 0000000..6b468b6 --- /dev/null +++ b/java/.gitignore @@ -0,0 +1 @@ +*.class diff --git a/java/bishi/YueSeFuHuan.java b/java/bishi/YueSeFuHuan.java new file mode 100644 index 0000000..bfc209a --- /dev/null +++ b/java/bishi/YueSeFuHuan.java @@ -0,0 +1,44 @@ +import java.util.HashMap; +import java.util.Map; +import java.util.Scanner; +public class YueSeFuHuan { + public static void main(String[] args) { + Scanner in = new Scanner(System.in); + while (in.hasNext()) { + int m = in.nextInt(); + if (m <=1 || m>=100){ + System.out.println("ERROR!"); + continue; + } + Map numList = new HashMap<>(); + for (int i=1;i<=100;i++){ + numList.put(i, i); + } + count(numList, m, 1, numList.size()); + } + } + + private static void count(Map numList, int m, int step, int maxSize){ + if (maxSize < m){ + // 打印结果 + StringBuilder sb = new StringBuilder(); + for (Integer i =1;i<= maxSize;i++){ + sb.append(numList.get(i)).append(","); + } + System.out.println(sb.toString().substring(0,sb.lastIndexOf(","))); + return; + } + int s = 1; + for (int i=1;i<= maxSize;i++){ + if (step == m){ + step = 1; + continue; + } + numList.put(s, numList.get(i)); + step ++; + s ++; + } + count(numList, m, step, s-1); + } +} +