题解
背锅切图仔
我想进大厂
展开
-
HDU - 6485 Similar Strings(尺取法)
题目描述:给两个字符串 A 和 B,要求求出长度都为 S 的子串 A’ 和 B’ 中最多有 K 个位置不同的最长长度 S 。例如:当 K 为 2 时,字符串 A “abcdefg” 和 字符串 B “pbedojg”因为子串 A’ “abcd” 和 子串 B’ “pbed” 有两个位置不同,长度为 4,为最长长度。所以答案为 4。#include <stdio.h>#include <string.h>#include <algorithm>using na原创 2021-02-09 20:07:25 · 274 阅读 · 0 评论 -
HDU - 6489 The puzzle
题目描述:皮划艇正在玩包含n个不同方块的益智游戏。他用从 1 到 n 的整数标记这些块,这些整数显示了块的原始位置。每次他可以交换两个方块,他想知道至少需要多少次才能恢复拼图。注意重点:开一个标记数组,标记哪些位置已经解决。#include <stdio.h>#include <string.h>const int maxn = 100100;int a[maxn]; //输入数组 int b[maxn]; //标记数组 int main(void) { int T;原创 2021-02-09 18:45:06 · 154 阅读 · 0 评论 -
HDU - 6482 A Path Plan
题目描述:有两个人 A 和 B,他们一开始都在 y 轴上,最终都要去往 x 轴。设 A 的起点和终点为 y1, x1,B 的起点和终点为 y2, x2。题目要求:求有多少条路线能使他们途中不相遇(只考虑路径、不考虑时间)。思路很简单,用组合数就能很快解决。用 A 和 B 从起点到终点的所有路径数目减去 A 和 B 相遇的的路径数目即为所求。相遇的路径数目:将 A 和 B 的终点调换,那么他们必将相遇。注意事项:数值很大,要用到大数组合数。#include<stdio.h>cons原创 2021-02-09 18:24:44 · 178 阅读 · 0 评论 -
HDU - 6480 A Count Task
题目要求:求出字符串中只有一种字母的字串个数。我们只需要找到符合要求的最长的字串,然后用等差数列求和来计算即可。注意事项:题干说字符串很长,因此我们需要很快反应到要用long long来存储数据。#include <stdio.h>#include <string.h>char s[100005];int main(void) { int T; scanf("%d", &T); while(T--) { memset(s, 0, sizeof(s));原创 2021-02-09 18:12:31 · 166 阅读 · 1 评论