<p>废话不多说,现在我给你4道拼多多的笔试算法题,你觉得你可以得多少分?</p>
<p><img alt="" height="584" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-6b3d782d4c4ea0a43d4a4da1ec3f7c55.png" width="889"></p>
<p> </p>
<p>不管会不会,请继续看文末的[阿里云算法笔试合集],意外从朋友那里嫖的,这是一本能“在线”编程的程序员面试宝典,分享给有需要的朋友,直接<strong><a href="https://docs.qq.com/doc/DVmx5TmxlaXZsSnZL">点这</a></strong>可白嫖</p>
<h1>第一题:按题意模拟,注意第N次到的话特判,否则只能过96%</h1>
<pre class="blockcode"><code>#include <bits/stdc++.h> using namespace std;using LL = long long;
int k, n;int x;signed main() { // freopen("in", "r", stdin);
// freopen("out", "w", stdout);
while (~scanf("%d%d", &k, &n)) { int cur = 0, cnt = 0; int ok = 0; for (int i = 1; i <= n; i++) { scanf("%d", &x); if (ok) continue; if (cur + x == k) { if(n != i) ok = 1;
cur += x;
} else if (cur + x > k) {
cnt++;
cur = k - (cur + x - k);
} else {
cur += x;
}
} if (ok || k == 0) { printf("paradox\n");
} else { printf("%d %d\n", k - cur, cnt);
}
} return 0;
}</code></pre>
<h1>第二题:我是枚举了24种同构+并查集做的,一定有聪明的小朋友写出了预处理</h1>
<pre class="blockcode"><code>#include <bits/stdc++.h>using namespace std;using LL = long long;#define A 1#define B 2#define C 3#define D 4#define E 5#define F 6const int maxn = 1010;int n;int dice[maxn][7];int pre[maxn];int find(int x) { return x == pre[x] ? x : pre[x] = find(pre[x]);
}void unite(int x, int y) {
x = find(x); y = find(y);
pre[x] = y;
}int check(int x, int y) { if (dice[x][1]==dice[y][A]&&dice[x][2]==dice[y][B]&&dice[x][3]==dice[y][C]&&dice[x][4]==dice[y][D]&&dice[x][5]==dice[y][E]&&dice[x][6]==dice[y][F]) return 1; if (dice[x][1]==dice[y][C]&&dice[x][2]==dice[y][D]&&dice[x][3]==dice[y][B]&&dice[x][4]==dice[y][A]&&dice[x][5]==dice[y][E]&&dice[x][6]==dice[y][F]) return 1; if (dice[x][1]==dice[y][B]&&dice[x][2]==dice[y][A]&&dice[x][3]==dice[y][D]&&dice[x][4]==dice[y][C]&&dice[x][5]==dice[y][E]&&dice[x][6]==dice[y][F]) return 1; if (dice[x][1]==dice[y][D]&&dice[x][2]==dice[y][C]&&dice[x][3]==dice[y][A]&&dice[x][4]==dice[y][B]&&dice[x][5]==dice[y][E]&&dice[x][6]==dice[y][F]) return 1; if (dice[x][1]==dice[y][A]&&dice[x][2]==dice[y][B]&&dice[x][3]==dice[y][D]&&dice[x][4]==dice[y][C]&&dice[x][5]==dice[y][F]&&dice[x][6]==dice[y][E]) return 1; if (dice[x][1]==dice[y][C]&&dice[x][2]==dice[y][D]&&dice[x][3]==dice[y][A]&&dice[x][4]==dice[y][B]&&dice[x][5]==dice[y][F]&&dice[x][6]==dice[y][E]) return 1; if (dice[x][1]==dice[y][B]&&dice[x][2]==dice[y][A]&&dice[x][3]==dice[y][C]&&dice[x][4]==dice[y][D]&&dice[x][5]==dice[y][F]&&dice[x][6]==dice[y][E]) return 1; if (dice[x][1]==dice[y][D]&&dice[x][2]==dice[y][C]&&dice[x][3]==dice[y][B]&&dice[x][4]==dice[y][A]&&dice[x][5]==dice[y][F]&&dice[x][6]==dice[y][E]) return 1; if (dice[x][1]==dice[y][A]&&dice[x][2]==dice[y][B]&&dice[x][3]==dice[y][F]&&dice[x][4]==dice[y][E]&&dice[x][5]==dice[y][C]&&dice[x][6]==dice[y][D]) return 1; if (dice[x][1]==dice[y][F]&&dice[x][2]==dice[y][E]&&dice[x][3]==dice[y][B]&&dice[x][4]==dice[y][A]&&dice[x][5]==dice[y][C]&&dice[x][6]==dice[y][D]) return 1; if (dice[x][1]==dice[y][B]&&dice[x][2]==dice[y][A]&&dice[x][3]==dice[y][E]&&dice[x][4]==dice[y][F]&&dice[x][5]==dice[y][C]&&dice[x][6]==dice[y][D]) return 1; if (dice[x][1]==dice[y][E]&&dice[x][2]==dice[y][F]&&dice[x][3]==dice[y][A]&&dice[x][4]==dice[y][B]&&dice[x][5]==dice[y][C]&&dice[x][6]==dice[y][D]) return 1; if (dice[x][1]==dice[y][A]&&dice[x][2]==dice[y][B]&&dice[x][3]==dice[y][E]&&dice[x][4]==dice[y][F]&&dice[x][5]==dice[y][D]&&dice[x][6]==dice[y][C]) return 1; if (dice[x][1]==dice[y][E]&&dice[x][2]==dice[y][F]&&dice[x][3]==dice[y][B]&&dice[x][4]==dice[y][A]&&dice[x][5 |
|