日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

CSDN蓝桥杯算法题——题解Java版本——切面条

發布時間:2024/3/13 java 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CSDN蓝桥杯算法题——题解Java版本——切面条 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

題目:切面條

答案目標:

推導過程:

解析過程:

對照Java編碼1:

對照Java編碼2:

總結:


題目:切面條

一根高筋拉面,中間切一刀,可以得到2根面條。

如果先對折1次,中間切一刀,可以得到3根面條。

如果連續對折2次,中間切一刀,可以得到5根面條。 那么,連續對折10次,中間切一刀,會得到多少面條呢?

答案目標:

推導過程:

這個題應該找有幾個節點,這個節點是干擾切斷的關鍵。
這種題一般都會涉及2的次冪。
0折的時候,有0的節點,一刀分為了2條
1折的時候,有1個節點,一刀分為了3條,假如沒有那個節點,應該是4條,所以 4 - 1 = 3
2折的時候,是在1折的基礎上,本身已經有1個節點,然后再加上2個,1 + 2 = 3個節點,一刀切開本身應該8條,所以8-3=5.
3折的時候,是在2折基礎上,1 + 2 + 4 = 7個節點,一刀切開,本身應該16條,16-7=9條。
。。。
。。。
所以我們找出規律:

n折的時候,節點數應該為 2的0次冪+......2的n-1次冪。也就是2的n次冪-1。所以10次的時候,有1024-1=1023個節點。
n折的時候本身應該有2的n+1次冪2048條。所以2048-1023=1025

故而有:

折 條
0 2
1 3
2 5
推導可得:?

解析過程:

將目標對折次數帶入方程式可得:

n=10

count=1+=1+1024=1025

對照Java編碼1:

package com.item.action;import java.util.Scanner;public class Demo1 {public static void main(String[] args) {// 切面條·沒有說N的取值范圍//推導式??:count=1+Math.pow(2,n);Scanner sc =new Scanner(System.in);int n = sc.nextInt();sc.close();int count=(int) (1+Math.pow(2,n));System.out.println(count);}}

對照Java編碼2:

如果使用純暴力也是可以的,因為我們已經掌握了循環的規律。

package com.item.action;import java.util.Scanner;public class Demo1_2 {public static void main(String[] args) {// TODO Auto-generated method stubScanner sc = new Scanner(System.in);int n = sc.nextInt();sc.close();int result = 2;//底數int temp = 1;//用于緩存// 循環累加公式: 2 + 2^0 + 2^1 + 2^2 + ...... + 2^nfor (int i = 0; i < n; i++) {result += temp;temp = temp * 2;//2的n次方,進行累加}System.out.println(result);}}

總結:

本題目有很多種解法,無論是用手畫,或者挨個計算,或者使用暴力循環,以及向我一樣推導出對應的算法公式傳遞參數都可以。

總結

以上是生活随笔為你收集整理的CSDN蓝桥杯算法题——题解Java版本——切面条的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。