2014北郵計算機考研複試上機題解(上午 下午)

2021-09-07 13:50:12 字數 2879 閱讀 1137

據江湖傳聞,2023年計算機機試分為了上午、下午兩批。

先來看上午的題目。

直接統計就可以。

ac**:

#include#includeusing namespace std;

int a[105];

int main()

cnt=1;

}else

cnt++;

}if(cnt>ans) //最後乙個數還沒推斷

解題思路:

我們能夠簡化思路,寫乙個旋轉90度的函式。假設選擇180度則執行兩次,270度。則執行三次。。

ps:記得交換m,n。

解題思路:

先分析題目大意。總共同擁有四種操作。

a=a.sort()

a.[int]

用乙個map將list的名字和陣列下標相應,然後分析每乙個操作。詳見**。

ac**:

#include#include#include#include#define maxn 105

using namespace std;

int a[maxn][maxn]; //a[t]表示list對映到t的陣列

int len[maxn]; //len[t]表示list對映到t的長度

解題思路:

因為是最佳適應。能夠把最開始的記憶體依照從小到大排序。然後設立乙個vis訪問陣列。

每次新來乙個就從從開頭遍歷這個陣列,找到第乙個》=這個值,而且vis為0(未使用)的。然後把vis置1。詳見**

ac**:

#include#include#include#include#define maxn 105

using namespace std;

int a[maxn];

int vis[maxn];

int main()

}if(!flag) //沒找到,輸出null

解題思路:

這個就是個dfs的題目,從乙個點出發。能夠把他周圍的八個方向的點滿足條件的都遍歷了。假設能夠他們就是一類。繼續搜。

ac**:

#include#include#include#include#define maxn 105

using namespace std;

int m,n,d;

int a[maxn][maxn];

int vis[maxn][maxn];

int dir[8][2]= ,,,,,,,}; //八個方向

int ab(int p)

void dfs(int x,int y)

else //逗號之後的數假設是二進位制,十進位制。十六進製制的

int x;

for(i=3; i='0'&&str[i]<='9')

x=str[i]-'0';

else

x=str[i]-'a'+10;

tmp=tmp*d+x;}}

if(strcmp(op,"mov")==0) //假設是mov

else //假設是add

}printf("%d %d %d %d\n",a[0],a[1],a[2],a[3]);}}

return 0;}/*

23mov ax,2

mov bx,3

add ax,bx

5mov ax,2

mov bx,030h

mov cx,11b

add ax,cx

add dl,cl

*/

2014北郵計算機院複試上機(上)

problem.a 眾數 思路 常規題穩拿分 include include using namespace std define maxn 100001 int cnt maxn int main else if max cnt num if num prob num num cout retur...

2014北郵計算機學院上午上機複試題目

輸入格式 輸入資料第一行是乙個整數t 1 t 100 表示測試資料的組數。對於每組測試資料 第一行是乙個正整數n 1 n 100 表示數列長度。第二行有n個整數,整數之間用空格隔開,所有的整數都不超過105,表示這個數列。輸出格式 對於每組測試資料,輸出乙個整數。輸入樣例 541 1125 1122...

2011北郵計算機院複試上機題

problem.a 反轉單詞 思路 經典的考察對於輸入輸出流的理解的題,可作為模板記住,用字串型的棧儲存輸入的單詞,因為題中說明了沒有連續空格也沒有標點符號,所以可以放心使用cin,跳過空格但不跳過回車,回車需要特殊處理。個人認為也可用getline cin,str,作為迴圈條件 如果包含空格或者是...