(牛客) 游游的字符重排(next_permutation的使用)

news/2024/12/4 18:28:31/


题目描述

游游定义一个字符串是“好串”,当且仅当该字符串相邻的字符不相等。例如"arcaea"是好串,而"food"不是好串。

游游拿到了一个字符串,她可以将该字符串的各个字符顺序随意打乱。她想知道一共可以生产多少种不同的好串?

输入描述:

一个仅包含小写字母的字符串,长度不超过10。

输出描述:

好串的数量。

示例1

输入

aab

输出

1

说明

只有"aba"这一种好串。

示例2

输入

arc

输出

6

示例3

输入

aaa

aaa

输出

0
#include<iostream>
#include<algorithm>
using namespace std;
const int N = 1e5 + 10;
int a[N];int panduan(string a) //判断当前排列组合是否符合好串
{int n = a.length();int i = 1;while (i <= n){if (a[i] == a[i - 1]) return 0;i++;}return 1;
}
int main()
{string a; cin >> a;sort(a.begin(), a.end());int sum = 0;do {sum += panduan(a);} while (next_permutation(a.begin(), a.end()));//会输出一段序列的全排序,有返回true,无返回falsecout << sum << endl;
}

【用法总结】C++ STL中 next_permutation函数的用法_荷叶田田_的博客-CSDN博客


http://www.ppmy.cn/news/1085612.html

相关文章

java用正则方法验证文件名是否合法

Java中用到文件操作时,经常要验证文件名是否合法. 用File类的createNewFile()方法的确很管用.但当要批量验证时,效率上就会有问题.正则匹配的开销比创建文件少了很多. 那么一个合法的文件(Win下)应该符合如下规则: 1.文件名不能为空,空在这里有两个意思: 文件名(包括扩展名…

如何利用开源工具搭建AI大模型底座

开源社区是技术发展的一个重要部分&#xff0c;对于AI大模型来说&#xff0c;也是如此。 我们在这篇文章中来尝试通过开源工具来构建AI大模型的底座&#xff0c;涉及到的技术包括&#xff1a; LangchainOpenAIFlowiseLocalAILlama 使用Langchain构建第一个对话应用 如果你使…

Sublime Text汉化,主打简单明了

在Sublime中设置中文的步骤如下&#xff1a; 1.打开Sublime Text&#xff0c;使用快捷键ShiftCtrlP&#xff08;MacOS下cmdShiftP&#xff09;&#xff0c;弹出查找栏。 2.在搜索框中输入关键字"install"&#xff0c;出现下拉选项&#xff0c;点击选择其中的"P…

useRef 定义的 ref 在控制台可以打印但是页面不生效?

useRef 是一个 React Hook&#xff0c;它能让你引用一个不需要渲染的值。 点击计时器 点击按钮后在控制台可以打印但是页面不生效。 useRef 返回的值在函数组件中不会自动触发重新渲染&#xff0c;所以控制台可以显示变化而按钮上无法显示 ref.current的变化。 import { use…

C++信息学奥赛1182:合影效果

#include <bits/stdc.h> using namespace std;int main() {int n; // 人数cin >> n;string arr[n]; // 存储性别的数组double brr[n]; // 存储身高的数组// 读取每个人的性别和身高for (int i 0; i < n; i){cin>>arr[i]>>brr[i];}// 对男…

【Shopee】Open API 申请资格说明 | ERP

一、Open API开放平台说明 为了给开发者提供更好的使用环境&#xff0c;Shopee准备了许多API方便Shopee卖家用户串接。 在Open API平台上&#xff0c;您可以直接申请串接所需之Pantner ID和密钥&#xff0c;无须再逐一向Shopee申请店铺的独立密钥。 此平台提供内容如下&…

递归算法学习——目标和,组合总和,字母大小写全排列

目录 一&#xff0c;目标和 1.题意 2.例子 3.题目接口 4.解题思路及代码 二&#xff0c;组合总和 1.题意 2.例子 3.题目接口 4.解题思路及代码 三&#xff0c;字母大小写全排列 1.题意 2.例子 3.题目接口 4.解题思路及代码 一&#xff0c;目标和 1.题意 给你一个…

Navicat16安装教程

注&#xff1a;因版权原因&#xff0c;本文已去除破解相关的文件和内容 1、在本站下载解压后即可获得Navicat16安装包和破解补丁&#xff0c;如图所示 2、双击“navicat160_premium_cs_x64.exe”程序&#xff0c;即可进入安装界面&#xff0c; 3、点击下一步 4、如图所示勾选“…