華為機試題

2021-07-25 06:33:00 字數 1119 閱讀 6693

華為機試題:1 2 3 4 5 6 7 8 9,共9個數字,按照此順序,在1~9的中間的空白處填入「+」或「-」或「 」,,例如,在2、3之間填入「-」,4、5之間填入「+」,6、7之間填入「+」,8、9間填入「-」,其他地方預設「 」,則得到這樣乙個等式:12-34+56+78-9,得數為:103。

題目要求:使用者輸入乙個數字,程式輸出共有多少種符合上述構成要求的等式能夠計算出這個數字。例如,輸入5,輸出「共有21種可能」。

**:最笨的方法,不過不難理解。以後如果想到了更好的方法會繼續分享。自己還編了乙個用python實現的,這裡就不貼出來了。

#include#includeint compute(int *p,char a[17]);

int * transfer(char a[17]);

using namespace std;

int main()

; char b[3] = ;

for (int i = 0; i < 3; i++) //通過最笨的迴圈,得到所有可能的情況。}}

}}

}} }

cout << "there are " << count << " ways to get it!";

system("pause");

return 0;

}int * transfer(char a[17]) //將char型的陣列進行轉換,以「+」和「-」為分割,將「 」去掉,得到乙個新的int型陣列.

i = i - 2;

for (int j = begin; j <= i; j+=2)

*(p+count) = temp;

count++;

} for (int j = count; j < 9; j++)

*(p+j) = 0;

return p;

}int compute(int * p,char a[17]) //對之前得到的int陣列進行求值。隱含的規律:得到的int型數字的長度一定比初始的char型陣列中的「+」和「-」的數量和多1。

case'-':

default:

break;

} }return result;

}

華為機試題

今天去華為機試,感覺是再謹慎都不為過啊!zc前一天晚上還跟我強調了判空,記憶體釋放。前兩題都是基本題,後面一題不會。1 輸入兩個數 反轉相加的和輸出。2 三天打漁兩天曬網 從1990 年1月1日開始 打漁輸出fishing 曬網輸出sleeping 我因為printf的是fishing sleepi...

華為機試題

通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串壓縮程式,將字串中連續出席的重複字母進行壓縮,並輸出壓縮後的字串。壓縮規則 1.僅壓縮連續重複出現的字元。比如字串 abcbc 由於無連續重複字元,壓縮後的字串還是 abcbc 2.壓縮欄位的格式為 字元重複的次數 字元 例如 字串 yyy...

華為機試題

1.輸入乙個字串,將字串中的非字母字元刪除,保留字串中的小寫字母,將大寫字母變為小寫字母,然後輸出字串。比如 輸入 sdf sfjadf sdf 輸出 sdfsfjadfsdf 2.n進製數求和,輸入乙個整數n 2 n 35 兩個字串,字串中的字元一定是0 9或者a z 10 35 中的,輸出兩個字...