#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
std::vector<int> v;
long int a1[1000000];
string a[1000000];
for (int i=0; i<100; i++)
a[i]=" ";
int n;
cout << "enter the value of n";
cin >> n;
for (int i=0; i<n; i++)
{
cin >> a1[i];
v.push_back(a1[i]);
}
sort(v.begin(), v.end());
char ch[100];
int i=0;
do {
for(int j=0; j<n; j++)
{
ch[j] = v[j] + '0';
// cout<<ch[j];
}
int j=3;
int k=0;
for(int l=0; l<n; l++)
{
a[i] = a[i] + ch[l];
}
cout << a[i] << endl;
i++;
}
while (std::next_permutation(v.begin(), v.end()));
cout << endl << i;
}
문자열 배열에 모든 순열을 저장하고 싶지만 저장할 수 없습니다.> 8 (40320) 예 9! 앞으로 선언 할 경우 문자열 [1000000] dev C++에서 오류가 표시 될 수 있습니다. 어떻게 문자열 배열을 speifically 저장하는 방법을 설명 할 수 있습니다. (이 문자열 코드를 쉽게 다른 코드에 넣기를 원함) 9보다 큼 ! 또는 개까지 15!문자열 배열에 더 많은 수의 문자열을 저장하는 방법
컨테이너에 '15!'문자열을 저장하고 싶습니까? 얼마나 큰 지 그리고 얼마나 많은 저장 공간이 필요한지 알고 계십니까? – Blastfurnace
컨테이너를 사용하는 @Blastfurnace는 대용량의 메모리를 필요로 할 수 있습니다. 나는 spoj를 수행하는 데 원하는대로 10^15까지 저장할 수 있습니다. –
진지하게 계산기를 가져 와서 1.3tillion 이상의 std :: string 객체와 그 내용. spoj 문제에 대해이 작업을 수행하는 경우 무의미하게 비현실적인 brute-force 솔루션을 시도하고있을 것입니다. – Blastfurnace