華為2019屆校招筆試題
1.輸入任意個字串,將其中的小寫字母變為大寫,大寫字母變為小寫,其他字元不用處理
輸入描述:abcd12#%XYZ
輸出描述:ABCD12#%xyz
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); String string = in.nextLine(); char[] ch = string.toCharArray(); for(int i = 0; i < string.length(); i++) { if(ch[i] >= 'a' && ch[i] <= 'z') { ch[i] = (char)(ch[i]-'a'+'A'); } if(ch[i] >= 'A' && ch[i] <= 'Z') { ch[i] = (char)(ch[i]-'A'+'a'); } } System.out.println(new String(ch)); } }
asdj33&&%SI
asdj33&&%si
2.小偷來到了一個神祕的王宮,突然眼前一亮,發現5個寶貝,每個寶貝的價值都不一樣,且重量也不一樣,但是小偷的揹包攜帶重量有限,所以他不得不在寶貝中做出選擇,才能使偷盜的財富最大,請你幫助小偷計算一下。
輸入描述:
- 寶貝價值:6,3,5,4,6
- 寶貝重量:2,2,6,5,4
- 小偷揹包容量:10
輸出描述:
- 偷到寶貝的總價值:15
示例1:
- 輸入:
6,3,5,4,6
2,2,6,5,4
10
- 輸出:15
分析:0-1揹包問題
import java.util.Scanner; public class Main { static int[] value = new int[1000]; static int[] weight = new int[1000]; static int[][] got = new int[1000][1000]; static int len; public static void main(String[] args) { Scanner in = new Scanner(System.in); String v = in.nextLine();//價值 String w = in.nextLine();//重量 int cop = in.nextInt();//容量 getValues(value, v); getValues(weight, w); System.out.println(getMax(0,cop)); } //將字串存入陣列中 static void getValues(int[] a, String s) { String[] array = s.split(","); len = array.length; for(int i=0; i < len; i++ ) { a[i] = array[i].charAt(0) - '0'; } } //獲取最大的價值 static int getMax(int n, int c) { if(got[n][c] != 0) { return got[n][c]; } if(n == len) { return 0; } if(weight[n] <= c) { return got[n][c] = Math.max(getMax(n+1, c),getMax(n+1, c-weight[n])+value[n]); } return got[n][c] = getMax(n+1, c); } }
可能這種更好理解一點:
package te;
import java.nio.file.spi.FileSystemProvider;
public class Main {
static int[] value = new int[1000];
static int[] weight = new int[1000];
static int[][] got = new int[1000][1000];
static int len;
public static void main(String[] args) {
// Scanner in = new Scanner(System.in);
String v = "6,3,5,4,6";//價值
// System.out.println(v);
String w = "2,2,6,5,4";//重量
// System.out.println(w);
int cop = 10;//容量
getValues(value, v);
getValues(weight, w);
System.out.println("獲得最大價值:"+getMax(value, weight, len, cop, got));
}
//將字串存入陣列中
static void getValues(int[] a, String s) {
String[] array = s.split(",");
len = array.length;
for(int i=0; i < len; i++ ) {
a[i] = array[i].charAt(0) - '0';
}
}
//獲取最大的價值
static int getMax(int[] v, int[] w, int n, int c,int[][] got) {//n表示物品的個數
//採用從底到頂的方式來設定got[i][j]的值
//首先放w[n-1]
for(int j = 0; j <= c; j++) {
if(j<w[n-1]) {
got[n-1][j]=0;
}
else {
got[n-1][j]=v[n-1];
}
}
//接下來放剩下的n-1個物品
for(int i=n-2; i>=0; i--) {
for(int j=0;j<=c;j++) {
if(j<w[i]) {
got[i][j]=got[i+1][j];
}
else {
got[i][j]=got[i+1][j]>got[i+1][j-w[i]]+v[i]?got[i+1][j]:got[i+1][j-w[i]]+v[i];
}
}
}
System.out.println("陣列:");
for(int i = 0;i < n; i++) {
for(int j = 0;j <= c; j++) {
System.out.printf("%-3d",got[i][j]);
}
System.out.println('\n');
}
return got[0][c];
}
}
陣列:
0 0 6 6 9 9 12 12 15 15 15
0 0 3 3 6 6 9 9 9 10 11
0 0 0 0 6 6 6 6 6 10 11
0 0 0 0 6 6 6 6 6 10 10
0 0 0 0 6 6 6 6 6 6 6
獲得最大價值:15
3.C++中的typedef好處很多,可以讓標準化自己DIY的型別,為便於理解typedef能幹啥,本題考查各種typedef後,某個自定義型別的最終形態是啥。
輸入為兩部分,共兩行:
第一行是一堆typedef定義,標準C++語句,以分號結束,這裡不用考慮struct/union這類,只需要考慮基本型別和指標。
第二行是指定某個自定義type
輸出為該自定義type的最終形態
如輸入:
typedef int INT;typedef INT** INTP;
INTP
則輸出:int**
注意,如果有指標型別,則指標表達的*和前面的型別中級間隔一個空格,和編譯器的輸出保持一致;另外,如果第一行輸入的語句是編譯不過的,或者第二行選擇的type在第一行中沒有定義,則輸出none
相關推薦
華為2019屆校招筆試題
1.輸入任意個字串,將其中的小寫字母變為大寫,大寫字母變為小寫,其他字元不用處理 輸入描述:abcd12#%XYZ 輸出描述:ABCD12#%xyz import java.util.Scanner; public class Main { public stati
位元組跳動2019屆校招筆試題
1.世界盃開幕式會在球場C舉行,球場C的球迷看臺可以容納M*N個球迷。在球場售票完成後,現官方想統計此次開幕式一共有多少個球隊球迷群體,最大的球隊球迷群體有多少人。 經調研發現,球迷群體在選座時有以下特性: 同球隊的球迷群體會選擇相鄰座位,不同球隊的球迷群體會選
位元組跳動2019屆校招筆試題二
2.為了提高文章質量,每一篇文章(假設全部都是英文)都會有m民編輯進行稽核,每個編輯獨立工作,會把覺得有問題的句子通過下表記錄下來,比如[1,10],1表示病句的第一個字元,10表示病句的最後一個字元。也就是從1到10著10個字元組成的句子,是有問題的。 現在需
2018華為校招筆試題
校招題1 字串重排給定一個原始字串,統計字串中各字元出現的次數,並按照ASCII碼遞增的順序依次輸出。例:原始字串為eeefgghh統計字串中各字元的出現次數: e : 3 f : 1 g : 2 h : 2重排字串輸
Jungle的2019屆校招總結(含部分面經筆經)
Jungle的秋招結束了,藉助CSDN平臺,總結一下從7月底到10月底正式簽約期間的找工作之旅。首先宣告:Jungle只是個普普通通的小碩,並不是各種大佬,更比不上平均年薪百萬的知乎er,所以在這裡分享的是一個平凡小白的普普通通的求職之旅。 0.背景 大四保研,但是成績並不算拔尖,勉強搭
思特奇2019校招筆試題
描述系統對外提供的所有服務,因此介面中的成員常量和方法都必須是公開(public)型別的,確保外部使用者能訪問它們; 介面僅僅描述系統能做什麼,但不指明如何去做,所以介面中的方法都是抽象(abstract)方法; 介面不涉及和任何具體例項相關的細節,因此介面沒有構造方法,
巨人網路2019校招筆試題
巨人網路筆試,遊戲開發崗位。前面8個選擇題,主要考的是基礎,裡面有一道SQL題。後面兩道填空題,都是考的指標。兩道問答題,第一個具體是什麼,不記得了;第二個是考的Linux,列舉常用Linux命令。最後兩道程式設計題,如下: 隨機給出5張撲克牌,請程式設計實現判定這5張牌是否順子
京東2019校招筆試題-演算法工程師 選擇題知識點彙總
剛剛結束了京東的筆試,發現很多知識點都不太瞭解,所以在這篇文章做一個彙總學習。 目錄 1 哈夫曼樹 2 迴圈連結串列 3 堆 1 哈夫曼樹 給定n個權值作為n個葉子結點,構造一棵二叉樹,若該樹的帶權路徑長度達到最小,稱
校招筆試題編程技巧總結
hid sca 筆試 result div else 總結 class ash 技巧一://統計字符串s1的頻率 String s1 = in.nextLine(); //統計字符串s1的頻率 for (char c1 : s1.toCharAr
1~n的全排列--閱文集團2018校招筆試題
put ron class 校招 next() tostring return bsp 輸出格式 題目大意:給定整數n,求出1~n的全排列 示例 輸入:n=3 輸出:[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1] 1 im
2018 CVTE 前端校招筆試題整理
簡單的 三欄布局 位置 back 左右 blue color for循環 結果 昨天晚上(7.20)做了CVTE的前端筆試,總共三十道題,28道多選題,2道編程題 。做完了之後覺得自己基礎還是不夠紮實,故在此整理出答案,讓自己能從中得到收獲,同時給日後的同學一些參考。 首先
騰訊校招筆試題之小Q的歌單
題目 小Q的歌單 熱度指數:1624 時間限制:1秒 空間限制:32768K 小Q有X首長度為A的不同的歌和Y首長度為B的不同的歌,現在小Q想用這些歌組成一個總長度正好為K的歌單,每首歌最多隻能在歌單中出現一次,在不考慮歌單內歌曲的先後順序的情況下
美團點評校招筆試題
美團點評1 1:在網路7層協議中,如果想使用UDP協議達到TCP協議的效果,可以在哪層做文章? 因為UDP要達到TCP的功能就必須實現擁塞控制的功能,而且是在路由之間實現,這個在底層明顯是做不到擁塞控制的,在應用層也是做不到的,因為應用層之間和應用程式掛鉤,一般
阿里java校招筆試題——程式碼塊中語句的執行順序
下面是阿里java校招的一道筆試題,程式碼如下: public class HelloA { //構造方法 public HelloA(){ System.out.println("Hello A!父類構造方法"); } //非靜態
貝殼19年校招筆試題
題目描述 小智和小春兩個遊戲菜鳥要進行電競搏鬥,小智有X點HP,每次攻擊會使對方丟失A點生命值,每次攻擊完後需要冷卻C秒,小春有Y點HP,每次攻擊會使對方丟失B點生命值,每次攻擊完後需要冷卻D秒,玩家HP小於等於0時便死亡,若小智最終存活,則輸出XIAOZHI,
觸寶科技2018校招筆試題
#include <iostream> #include <string> #include <vector> using namespace std; void find(vector<string>& ve,vect
360校招筆試題(C++小明買菜)
大致題意: 小明拿n元錢去買菜,一共買x種菜,但是必須要在y種菜裡買一樣最貴的,問小明拿的錢夠不夠買菜。首先輸入n,然後輸入x,y(x<=y)。最後輸入y種菜每種菜的單價。 例: 輸入: 8 3 4 2 1 4 3 輸出: Yes 大致思
小米運維部14年校招筆試題A的個人答案
15年準備實習生面試時答的題,僅供參考一、linux基礎1)linux系統中如何獲取pid為100的程序所監聽的tcp埠,請給出詳細命令?【答】方法一:1netstat -nlg | grep 1950 2[[email protected] pierre]#
2018京東校招筆試題-資料分析崗
題目大意是給出一個數字n,問a^b=c^d(1<=a、b、c、d<=n)這種式子的個數 1^2=1^1 1^1=1^2,這樣的算兩個,n<=100000. 首先分析題目,n的資料範圍肯定是不能暴力的,從其他同學的反饋也表示這題暴力只能過20% 此題的規律在
2016年騰訊校招筆試題(研發崗)
最近網際網路筆試較頻繁,也跟著師兄一起做了一些公司的筆試題,先將題記錄下來吧,答案慢慢補。希望對自己明年找工作有幫助!首先上騰訊的筆試題,騰訊是我的dream offer啊啊啊啊啊啊啊! 一、不定