沐里纷纷


私信TA

用户名:Epoch

访问量:63671

签 名:

我不会算法

等  级
排  名 37
经  验 12902
参赛次数 1
文章发表 172
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

不会算法

解题思路:

朋友,买挂吗?

注意事项:

挂虽然好,但是还是不能太暴力,第一次内存时间双超...就别先全排出来再find了,太浪费了...边排边比对,对上就输出吧...

参考代码:

#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
#include <string>
#include <stack>
#define N 20

using namespace std;

vector<char> letters;

bool cmp(char a, char b)
{
	return a < b;
}

int main(int argc, char** argv)
{
	string s;
	cin >> s;
	vector<char> lettersBak;
	for (int i = 0; i < s.length(); i++)
		letters.push_back(s.at(i));
	lettersBak = letters;
	sort(letters.begin(), letters.end(), cmp);
	int index = 0;
	do
	{
		if (letters == lettersBak)
			break;
		index += 1;
	} while (next_permutation(letters.begin(),letters.end()));
	cout << index << endl;
	return 0;
}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区