首页 > 试题广场 >

吃豆人

[编程题]吃豆人
  • 热度指数:153 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
有一款叫做吃豆人(Pacman)的游戏有许多粉丝,这些粉丝只要看到看到任何包含"pacman"作为子串的字符串就会变得非常激动。现在你有一个长度为n的字符串S,你每次可以将其中一个字母替换为另外一个字母,请问你最少需要替换多少次才能使其不含有"pacman"作为子串?

输入描述:
一行一个正整数表示字符串长度

随后一行仅包含小写字母的字符串S


输出描述:
一行一个整数,表示答案。
示例1

输入

6
pacman

输出

1

说明

通过把第一个p换成a即可
示例2

输入

11
pacmanacman

输出

1

说明

通过把第一个 n 换成除了 p 以外任意一个字符即可
const readline = require("readline");

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
});
let n, str;
rl.on("line", function (line) {
    if (!n) {
        n = parseInt(line.trim());
    } else {
        str = line.trim();
        rl.close();
        console.log(str.split('pacman').length-1)
    }
});

发表于 2025-09-10 11:20:39 回复(0)