C#面試題:3個瓶蓋換一瓶酒
一瓶酒3元,每3個瓶蓋換一瓶酒,N元能喝多少瓶酒。
可以使用遞迴實現
- int CountNum(int num){//num瓶蓋數num=N/3;
- if(num<3){
- return num;
- }else{
- return (num-num%3)+CountNum(num/3+num%3);//呼叫遞迴方法
- }
- }
大家有什麼更好的解決方法,麻煩告訴我,大家一起進步。
相關推薦
C#面試題:3個瓶蓋換一瓶酒
一瓶酒3元,每3個瓶蓋換一瓶酒,N元能喝多少瓶酒。 可以使用遞迴實現 int CountNum(int num){//num瓶蓋數num=N/3; if(num<3){ return num; }else{ r
n元錢,2元錢買1瓶酒,2個空瓶換1瓶酒,4個瓶蓋換1瓶酒,一共可以喝多少瓶酒?
kris 2018-09-19 19:03:54 不存在借瓶或者蓋子哈!純數學算,python程式碼如下: money = 100 bottals = money/2 drink_bottal = bottals tops = bottals d
2元一瓶酒,2個空瓶換一瓶,4個瓶蓋換一瓶 問10塊錢買幾瓶酒??(僅需十行程式碼,純基礎知識)
對於著這種萌新來說邏輯思維能力是真的差 想了好久才繞過來這個彎 下附我寫的程式碼 沒用面向物件也沒用遞迴 money=int(input("請輸入你打算花多少錢買酒:")) #初始的錢能買多少瓶酒 ping=money//2 #分別記錄有多少瓶子有多少瓶蓋 pingzi=money/
網易C++面試題--被3整除
AS In 如果 typedef tro class PE 一個數 證明 小Q得到一個神奇的數列: 1, 12, 123,...12345678910,1234567891011...。 並且小Q對於能否被3整除這個性質很感興趣。 小Q現在希望你能幫他計算一下從數列的第
面試題:字串單詞對換,字串排序
//字串單詞對換 $str = "str_arr"; echo $str."\n"; $arr = explode("_",$str); print_r($arr); $st
C++ 面試題之兩個超過25位的數相加求和
上次有個兄弟面試碰到的,在這裡記錄下 void calculateAdd() { string str1 = "2142135213214235231323241"; &n
C#面試題:判斷一個數的二進位制位的某一位是否是1
判斷一個數的二進位制位的某一位是否是1. 程式碼如下: bool IsThirdBitOne(int num,int n){ //使用ToString()方法,轉換成二進位制,第二個引數只能是,2,8,16; string s=Convert.
C#面試題:一群小孩圍成一個圈的經典演算法
一群小孩圍成一個圈,從第一個開始報數,報到5的小孩退出圈,繼續,求剩下的最後一個小孩的編號。 程式碼如下: public static int count = 0;//計數器 public static int target = 5;//指定編號
C#面試題:求100以內的質數
質數是隻能被1和他本身整除的數。 for (int i = 1; i <= 100; i++) { for (int j = 2; j <=i; j++) {
C#面試題:快速排序法
快速排序法:找到一個基準點key,和left,right,比較,比key小的值放到key的坐邊,比key大的值,放到key的右邊。 採用遞迴方式,重複執行判斷,直到排序完成。 //快速排序法法 //排序找出基準點。 private static int
C#面試題:氣泡排序法
氣泡排序法: 1.比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。 2.對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。 3.針對所有的元素重複以上的步驟,除了最後一個。 4.持續每次對越來越少的元素重複上面的步
C#面試題:判斷括號,是否匹配
例如:{[]()} {[]}{()}都是匹配的。 {[[])}是不匹配的。 主要的思路就是用棧操作,當輸入{,[,(,時入棧,輸入,),],}時出棧,最後棧為空,表示匹配,棧不為空,表示不匹配。 程式碼如下: bool StackDemo
C#面試題:判斷交集
某商場有兩種商品A和B,A的購買記錄A=[1,2,2,3,4,5],B=[2,4,1,2,3].1,2,3...是使用者編號。求同時購買A,B兩種商品的使用者編號。 例如:輸入 : 1,2,2,3,4,5 2,4,1,2,3
C#面試題:選擇排序法
選擇排序法:個人認為,選擇排序法是一種改良版的氣泡排序法。 大家可以比較一下氣泡排序法的程式碼,和選擇排序法的程式碼。 void SelectSort(int[] arr){ for(int i=0;i<arr.Length;i++){
C#面試題:數字字串格式轉換
例如輸入:123456789,輸出:”1,2345,6789“ 示例程式碼如下: using System.Text; string Format(string str){ StringBuilder sb=new StringBuilder();//使用
C#面試題:輸入一個長度100的數字字串,判斷是否能被7整除
輸入一個長度為100的數字字串,首字元不能是0,判斷是否能被7整除。 思路:把字串中各個位數字拿出來與7取餘,如果最後為0,表示可以整除,不為0表示不能整除。 例如:504:5%=5,50%7=1,14%7=0等於0。那麼504能被7整除。 21
C#面試題:字串中字元出現的次數
尋找字串中出現次數最少,位置靠前的字元。 需要引用:using System.Collections.Generic; void FindChar(string str){ //使用字典Dictionary<key,value>來儲存字元,出現次數。
C#面試題:二分法查詢
程式碼如下:二分法查詢的陣列必須要排好序。 int BinarySearch(int[] arr,int x){ int min=0;//左索引 int max=arr.Length-1;//右索引 while(min<=max){
C++面試題:list和vector有什麼區別?
C++面試題:list和vector有什麼區別? 考點:理解list和vector的區別 出現頻率:★★★★ 解析: vector和陣列類似,它擁有一段連續的記憶體空間,並且起始地址不變,因此它能非常好的支援隨機存取(使用[]操作符訪問其中元素),但由於它的記憶體空間是連續的,所
C/C++面試題(3)——劍指offer1(賦值運算子函式)
今天又複習了C++面試題,這道題的目的是:給出一個類的宣告,然後寫出這個類的建構函式、解構函式、拷貝建構函式和運算子過載函式。 題目 //題目:如下為型別CMyString的宣告,請為該型別新增賦值