【Web題】狼追兔問題

💝💝💝歡迎來到我的博客,很高興能夠在這里和您見面!希望您在這里可以感受到一份輕松愉快的氛圍,不僅可以獲得有趣的內容和知識,也可以暢所欲言、分享您的想法和見解。
img

  • 推薦:kwan 的首頁,持續學習,不斷總結,共同進步,活到老學到老
  • 導航
    • 檀越劍指大廠系列:全面總結 java 核心技術點,如集合,jvm,并發編程 redis,kafka,Spring,微服務,Netty 等
    • 常用開發工具系列:羅列常用的開發工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
    • 數據庫系列:詳細總結了常用數據庫 mysql 技術點,以及工作中遇到的 mysql 問題等
    • 懶人運維系列:總結好用的命令,解放雙手不香嗎?能用一個命令完成絕不用兩個操作
    • 數據結構與算法系列:總結數據結構和算法,不同類型針對性訓練,提升編程思維,劍指大廠

非常期待和您一起在這個小小的網絡世界里共同探索、學習和成長。💝💝💝 ?? 歡迎訂閱本專欄 ??

博客目錄

    • 1.題目描述
    • 2.解決思路
    • 3.Java 代碼實現

1.題目描述

一只兔子躲進了 10 個環形分布的洞中的一個。狼在第一個洞中沒有找到兔子,就隔一個洞,到第 3 個洞去找;也沒有找到,就隔 2 個洞,到第 6 個洞去找;以后每次多一個洞去找兔子……這樣下去,如果一直找不到兔子,請問兔子可能在哪個洞中?

2.解決思路

既然狼總是找不到兔子,說明在某次尋找之后,狼就進入了一個無限重復的循環當中,根據題意,我們可以得出一個遞歸公式 f(n)=f(n-1)+n (n > 1),f(n)表示第 n 次找的洞,

目前已知 f(1)=1

f(1)=1

f(2)=3

f(3)=6

f(4)=10

f(5)=15%10=5

當列到 21 次時,發現開始重復了:
前 20 項:1 3 6 10 5 1 8 6 5 5 6 8 1 5 10 6 3 1 10 10
20 項后:1 3 6 10…

為了方便理解,簡單畫了一個草圖,可以清楚的看到狼每次走的桶位。

image-20231123231356943

3.Java 代碼實現

詳細說一下題解代碼,初始化一個容量為 10 的數組,然后在數組里面全部填充值為 1,代表兔可能存在的桶位。

因為題目說了可能出現追不上的情況,我們假設在 1000 次以內進入了一個狼追兔的死循環。

設 n 為狼走的步數, n += (i + 1);即為第 i+1 次訪問的桶位,因為是沒找到的死循環,所以設置該桶位為 0。

最后遍歷初始數據,當桶位的數值為 1 時表示沒有被訪問過,也是兔子可能躲藏的位置。

public class WolfFallingRabbit {public static void main(String[] args) {int[] a = new int[10];// 設置數組初值for (int i = 0; i < 10; i++) {a[i] = 1;}int n = 0;// 窮舉搜索for (int i = 0; i < 1000; i++) {n += (i + 1);int x = n % 10;a[x] = 0;  // 未找到,置0}// 輸出結果for (int i = 0; i < 10; i++) {if (a[i] == 1) {System.out.println("可能在第" + i + "個洞");}}}
}

覺得有用的話點個贊 👍🏻 唄。
??????本人水平有限,如有紕漏,歡迎各位大佬評論批評指正!😄😄😄

💘💘💘如果覺得這篇文對你有幫助的話,也請給個點贊、收藏下吧,非常感謝!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且長,行則將至,讓我們一起加油吧!🌙🌙🌙

img

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/167325.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/167325.shtml
英文地址,請注明出處:http://en.pswp.cn/news/167325.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

解決Resolving Android Dependencies問題

無論是谷歌的Admob&#xff0c;還是Unity的Level play&#xff0c; 在windows&#xff08;win10, win11&#xff09;下&#xff0c;都出現了resolving android dependencies 報錯并且卡住的問題&#xff0c;如圖: 主要錯誤&#xff0c;是找不到這個gradlew.bat文件。 在指定位置…

什么是單元測試?

什么是單元測試 單元測試是軟件開發中的一種測試方法&#xff0c;旨在驗證各個軟件組件或模塊的功能正確性。在敏捷開發環境中&#xff0c;單元測試尤為重要&#xff0c;因為它有助于確保代碼的質量和穩定性。下面是一些關于單元測試的關鍵點&#xff1a; 定義&#xff1a;單元…

力扣每日一題-統計和小于目標的下標對數目-2023.11.24

力扣每日一題&#xff1a;統計和小于目標的下標對數目 開篇 今天這道力扣打卡題寫得我好狼狽&#xff0c;一開始思路有點問題&#xff0c;后面就是對自己的代碼到處縫縫補補&#xff0c;最后蒙混過關。只能分享一下大佬的代碼&#xff0c;然后我幫大家分享代碼的思路。 題目鏈…

大模型能否生成搜索引擎的未來?

文&#xff5c;郝 鑫 編&#xff5c;劉雨琦 ChatGPT火爆之前&#xff0c;水面下&#xff0c;也有中國公司也在朝著智能助手的方向努力。夸克便是其中之一。在GPT風靡科技圈后&#xff0c;國內就開始陸續冒出一些大模型廠商。對當時夸克而言&#xff0c;做大模型毋庸置疑&am…

django(千鋒教育)

創建一個django項目 官網下載python最新版本 配置到環境變量中 打開intlij編輯器 創建django項目 安裝django&#xff1a;pip install django 創建django項目: django-admin startproject django01 創建djangoAPP&#xff1a;python manage.py startapp App 啟動&#xff1a…

設置定時自動請求測試_自動定時循環發送http_post請求---postman工作筆記001

其實就是創建接口文件夾的時候,有個monitor collection 用來監聽接口執行情況,這里就可以設置 可以看到多久執行一次對吧,這里可以設置每幾分鐘執行一次,一共執行多少次等等 但是這里要說明一下,如果需要使用monitor功能,必須需要登錄, 所以如果這里點擊monitor collection…

媒體增加日活量的有效策略

隨著數字媒體的蓬勃發展&#xff0c;提高日活量成為媒體平臺追求的重要目標之一。日活量的增加不僅意味著更廣泛的影響力&#xff0c;還能為媒體平臺帶來更多的商業機會。以下是一些有效的策略&#xff0c;可幫助媒體提高日活量&#xff1a; admaoyan貓眼聚合 內容優質化&#…

**QT與目標板聯合調試_斷點仿真**

原文地址: https://blog.csdn.net/u012851408/article/details/86715626

仙女麻麻看過來~這是不是你們在找的外套?

分享女兒的秋冬穿搭 時尚與美觀兼具的毛毛外套 洋氣百搭不挑人穿 誰穿對都好看系列 經典寬松版型 不臃腫對身材包容性很強 小編墻裂推薦哦&#xff01;&#xff01;

NFT Insider115:The Sandbox開設元宇宙Diorama快閃店,?YGG Web3 游戲峰會已開幕

引言&#xff1a;NFT Insider由NFT收藏組織WHALE Members、BeepCrypto聯合出品&#xff0c;濃縮每周NFT新聞&#xff0c;為大家帶來關于NFT最全面、最新鮮、最有價值的訊息。每期周報將從NFT市場數據&#xff0c;藝術新聞類&#xff0c;游戲新聞類&#xff0c;虛擬世界類&#…

RevCol:可逆的柱狀神經網絡

文章目錄 摘要1、簡介2、方法2.1、Multi-LeVEl ReVERsible Unit2.2、可逆列架構2.2.1、MACRo設計2.2.2、MicRo 設計 2.3、中間監督 3、實驗部分3.1、圖像分類3.2、目標檢測3.3、語義分割3.4、與SOTA基礎模型的系統級比較3.5、更多分析實驗3.5.1、可逆列架構的性能提升3.5.2、可…

貴金屬交易指南:如何在市場中獲利?

貴金屬市場一直以來都是投資者追逐利潤的熱門選擇&#xff0c;然而&#xff0c;貴金屬市場波動較大&#xff0c;在市場中獲利并非易事。想要成功&#xff0c;需要理解市場動態和采取適當的策略。萬洲金業將為您提供一些實用的貴金屬交易指南&#xff0c;幫助您在市場中獲利。 …

PostgreSQL create or replace view和重建視圖 有什么區別?

一、 replace vs 重建 遇到開發提了個問題&#xff0c;create or replace view和重建視圖&#xff08;dropcreate&#xff09;有什么區別&#xff0c;查詢資料整理了一下。 1. create or replace 當存在同名視圖時&#xff0c;嘗試將其替換新視圖語句必須與現有視圖查詢具有相…

LeetCode算法題解(動態規劃,背包問題)|LeetCode1049. 最后一塊石頭的重量 II、LeetCode494. 目標和

一、LeetCode1049. 最后一塊石頭的重量 II 題目鏈接&#xff1a;1049. 最后一塊石頭的重量 II 題目描述&#xff1a; 有一堆石頭&#xff0c;用整數數組 stones 表示。其中 stones[i] 表示第 i 塊石頭的重量。 每一回合&#xff0c;從中選出任意兩塊石頭&#xff0c;然后將…

springboot2.1升級到2.7 actuator丟失部分metrics端點

項目場景&#xff1a; 項目需要升級springboot從2.1升級至2.7 問題描述 發現之前的metrics后面的jvm相關的端口丟了 原因分析&#xff1a; 找到這樣一篇博文https://blog.csdn.net/CL_YD/article/details/120309094&#xff0c;這篇博文意思是對的&#xff0c;但是寫的不太好…

Java基于springoot開發的企業招聘求職網站

演示視頻&#xff1a; https://www.bilibili.com/video/BV1xw411n7Tu/?share_sourcecopy_web&vd_source11344bb73ef9b33550b8202d07ae139b 技術&#xff1a;springootmysqlvuejsbootstrappoi制作word模板 主要功能&#xff1a;求職者可以注冊發布簡歷&#xff0c;選擇簡…

案例018:基于微信小程序的實習記錄系統

文末獲取源碼 開發語言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 數據庫&#xff1a;mysql 5.7 開發軟件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序開發軟件&#xff1a;HBuilder X 小程序…

【python入門篇】函數(6)

這一節將詳細介紹Python中函數的用法&#xff0c;包括函數的定義、調用、參數、返回值、作用域等。 函數的概述&#xff1a; Python函數是一種封裝了特定任務的可重用代碼塊。通過將程序分解為更小、更具體的任務&#xff0c;函數提供了一種有效的方式來組織和管理代碼&#xf…

保姆級連接FusionInsight MRS kerberos Hive

數新網絡&#xff0c;讓每個人享受數據的價值https://xie.infoq.cn/link?targethttps%3A%2F%2Fwww.datacyber.com%2F 概述 本文將介紹在華為云 FusionInsight MRS&#xff08;Managed Relational Service&#xff09;的Kerberos環境中&#xff0c;如何使用Java和DBeaver實現遠…

threejs創建一個旋轉的正方體【完整代碼】

效果&#xff1a; 中文網three.js docs 1.搭建環境 安裝three 首先我們需要新建一個項目 vue/react都可 這里以vue為演示 npm i three 找到一個新的頁面 在頁面script的地方導入three import * as THREE from "three" 或者自己逐個導入 import {PerspectiveC…