Pagini recente » Cod sursa (job #1974867) | Cod sursa (job #2047205) | Cod sursa (job #1207795) | Cod sursa (job #1449555) | Cod sursa (job #2433453)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("litere.in");
ofstream fout("litere.out");
const int nmax = 10001;
char s[nmax];
int sol, n;
void read()
{
fin >> n;
fin.get();
fin.getline(s, nmax);
fin.close();
}
void quick_sort(int st, int dr)
{
if(st < dr)
{
int m = (st + dr) / 2;
swap(s[st], s[m]);
int i = st, j = dr, d = 0;
while(i < j)
{
if(s[i] > s[j])
{
swap(s[i], s[j]);
d = 1 - d;
}
i += d;
j -= 1 - d;
sol++;
}
quick_sort(st, i - 1);
quick_sort(i + 1, dr);
}
}
int main()
{
read();
quick_sort(0, n - 1);
fout << sol - 2<< "\n";
return 0;
}