PKU2018研究生上機測試

2021-09-12 02:23:57 字數 3110 閱讀 2952

pku2018研究生上機測試**:2018研究生上機測試

#實力不足,緩慢更新……#

a.喜歡的數

#include #include using namespace std;

int main()

sum = str[i][k] - '0' + str[i][j] - '0';

} if (flag == true) while (sum != 0);

for (int k = 0, j = temp.length() - 1; k <= j; k++, j--)

if (temp[k] != temp[j])

if (flag)

ans++;

} }printf("%d", ans);

return 0;

}

b:字串排序

#include #include #include using namespace std;

struct node node[110];

bool cmp(node a, node b)

int main()

} node[i].num = temp;

} sort(node, node + n, cmp);

for (int i = 0; i < n; i++)

cout << node[i].str << endl;

return 0;

}

c:北大杯撞球比賽

#include bool win(int x, int y) 

int main()

if (flag == false)

} printf("%d", ans);

return 0;

}

d:充實的寒假生活

#include #include using namespace std;

struct action action[10010];

bool cmp(action a, action b)

int main()

} printf("%d", ans);

return 0;

}

e:蜜蜂

①用dfs方法做的

(測試了一下1到49,超時,應該選擇用dp,遞迴變遞推可能也行?不想試了,練習一下dp)

#include #include using namespace std;

int count = 0;

int start, end;

void dfs(int x)

if (x > end)

return;

dfs(x + 1);

dfs(x + 2);

}int main()

return 0;

}

②用動態規劃方法做的

hdoj已ac

#include long long dp[55][55];

void init()

for(int i=1;i<50;i++)

for (int j = i + 3; j < 50; j++)

}int main()

return 0;

}

f:battle city

這題有坑哇!!居然要用優先佇列!!因為這不是普通的bfs!

去poj上搜了一下發現poj上有,一開始寫的普通廣搜wa了,搜了一下才知道要用優先佇列!

poj已ac

#include #include #include using namespace std;

int row, col;

bool visit[310][310] = ;

char map[310][310];

int x[4] = ;

int y[4] = ;

struct node

}s, t, temp;

bool judge(int x, int y)

int bfs()

} }return -1;

}int main()

if (map[i][j] == 't')

}} printf("%d\n", bfs());

} return 0;

}

g:find a multiple

#include #include int a[10010], sum[10010] = ;

int mod[10010] = ;//mod存放的是對應餘數的陣列的下標

int main()

if (mod[sum[i] % n] != -1)

else

mod[sum[i] % n] = i;

} return 0;

}

h.wormholes

bellman ford演算法

#include #include #include #include using namespace std;

const int maxn = 510;//最大頂點數

const int maxm = 2510;//最大邊數

const int inf = 0x3fffffff;

int n;//實際頂點數

int d[maxn];//起點到達各點的最短路徑長度

struct node

};vectoradj[maxn];

bool bellman(int s)

} }for (int u = 1; u <= n; u++)

} return true;

}int main()

for (int i = 0; i < t; i++)

for (int i = 1; i <= n; i++)

} if(flag==false)

printf("no\n");

} return 0;

}

2018北大研究生上機測試 A 喜歡的數

include include include bool judge char s bool sys char s int l strlen s int t 0 for int i 0 isprintf函式的用法,就是把整數 d列印到自己設定的str字串陣列中,或者使用itoa函式都可以。回文數的判...

華東師範2018研究生複試上機題題解

假設在週末舞會上,男士們和女士們進入舞廳時,各自排成一隊。跳舞開始時,依次從男隊和女隊的隊頭上各出一人配成舞伴。規定每個舞曲能有一對跳舞者。若兩隊初始人數不相同,則較長的那一隊中未配對者等待下一輪舞曲。現要求寫乙個程式,模擬上述舞伴配對問題。三個整數 m n k 1 m,n 150,1 k 4000...

研究生複試個人上機心得

1 ges 和puts 函式需包含在標頭檔案中。2 string型別可以接受帶空格的字串,但需用gets 函式輸入,即需要型別轉換。3 gets char 和puts char 注意型別的轉換。4 在cin後使用gets時需注意,cin讀入後仍有乙個回車符留在本行,所以須先由gets讀入回車符再開始...