50642023-04-13 12:19:34czitaKövetkező permutáció (50 pont)cpp17Futási hiba 3/507ms4568 KiB


#include <bits/stdc++.h>
using namespace std;
int main()
{
    int n=6000;
    cin >> n; 
    vector<int> X(n, 0);
  
    for (size_t i = 0; i < n; i++)
    {
        cin >> X[i];
    }
    vector<int> Y;
    int db = n - 1;
   // Y.push_back(X[n - 1]);
    while (db>0&&(X[db]<=X[db-1]))
    {
        Y.push_back(X[db]);
        db--;
    }
    int ut = X[db - 1];
    Y.push_back(X[db]);
    Y.push_back(X[db-1]);
    sort(Y.begin(),Y.end());
    int maxy = Y.capacity()-1;
    while (Y[maxy-1]>ut)
    {
        maxy--;
    }
    
    X[db - 1] = Y[maxy];
    for (int i = maxy-1; i >=0; i--)
    {
       
            X[db] = Y[i];
            db++;
       
    }
    for (int i = Y.capacity()-1; i > maxy; i--)
    {
        
            X[db] = Y[i];
            db++;
       
    }
    for (auto a : X)
    {
        cout << a<<" ";
    }
    cout << endl;
   
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base3/50
1Elfogadva0/03ms1808 KiB
2Futási hiba0/04ms2188 KiB
3Hibás válasz0/13ms2216 KiB
4Hibás válasz0/12ms2428 KiB
5Hibás válasz0/12ms2536 KiB
6Elfogadva1/13ms2756 KiB
7Hibás válasz0/22ms2848 KiB
8Hibás válasz0/22ms2844 KiB
9Hibás válasz0/23ms3084 KiB
10Hibás válasz0/22ms3088 KiB
11Hibás válasz0/12ms3092 KiB
12Hibás válasz0/13ms3208 KiB
13Hibás válasz0/13ms3300 KiB
14Hibás válasz0/13ms3372 KiB
15Hibás válasz0/33ms3460 KiB
16Hibás válasz0/33ms3572 KiB
17Futási hiba0/33ms3564 KiB
18Futási hiba0/34ms3820 KiB
19Futási hiba0/34ms3924 KiB
20Futási hiba0/36ms4064 KiB
21Futási hiba0/36ms4292 KiB
22Futási hiba0/37ms4112 KiB
23Futási hiba0/37ms4244 KiB
24Futási hiba0/37ms4240 KiB
25Futási hiba0/26ms4568 KiB
26Elfogadva2/26ms4472 KiB