0
点赞
收藏
分享

微信扫一扫

Java金典题目 -- 狼追兔子(环形)

at小涛 2022-05-31 阅读 55

此题注意审题---是环形的洞!!!

题目是:在一个有N个环形洞中,兔子躲进其中一个,狼先到第一个,没有找到,然后第三个,也没有找到,再到第六个,第十个.....以此类推,每次在前面的基础上加一个,最终狼没追到兔子.问兔子可能在那个洞里?

输入

输入N 其中 1<=n<=100

输出

输出狼找不到的洞的编号,每个号码占一行

样例输入

10

样例输出

2
4
7
9



那么如果我们循环n次就够了 其次我们如果吧狼找过的洞都赋0 最后判断不为0的即是兔子的洞 那么问题来了 环形的是不是会超出洞数 那么我们就要 % n 即可 (时钟原理) ..  看代码理解!:

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
        int n = sc.nextInt(),x = 0,t = 0;
        if(n >=1 && n <=100) {
            int [] arr = new int [n];
            for(int i = 0;i < n;i++) {
                arr[i] = i+1;
            }
            
//            for(int i = 0;i < arr.length;i++) {
//                System.out.print(arr[i] + " ");
//            }
//喜欢就点赞啥的  这是对我最大支持...

            
            for(int i = 0;i < n;i++,x++) {
                t += x;
                if((t+x) >= n) {
                    arr[(t+x)%n] = 0;
                }else {
                    
                    arr[t+x] = 0;
                }
                
                
            }
            
            for(int i = 0;i <n ;i++) {
                if(arr[i] != 0) {
                    System.out.println(arr[i]);
                }
            }
            
        }
    
    }
}

 

喜欢就点赞啥的  这是对我最大支持...


本文来自博客园,作者:​​咸瑜​​​,转载请注明原文链接:​​javascript:void(0)p/14191973.html​​


举报

相关推荐

0 条评论