Pagini recente » Cod sursa (job #1271104) | Cod sursa (job #3194779) | Cod sursa (job #317564) | Cod sursa (job #1190259) | Cod sursa (job #112004)
Cod sursa(job #112004)
Utilizator |
Andrei Grigorean wefgef |
Data |
2 decembrie 2007 19:21:06 |
Problema |
Litere |
Scor |
Ascuns |
Compilator |
cpp |
Status |
done |
Runda |
|
Marime |
0.61 kb |
#include <cstdio>
#include <cassert>
const int Nmax = 10005;
const int Sigma = 26;
int N;
char s[Nmax];
int Frecventa[Sigma];
int Ret;
void ReadData() {
freopen("litere.in", "r", stdin);
freopen("litere.out", "w", stdout);
scanf("%d", &N);
assert(1 <= N && N <= 10000);
for (int i = 0; i < N; ++i) {
scanf(" %c ", s+i);
assert('a' <= s[i] && s[i] <= 'z');
}
}
void Solve() {
for (int i = 0; i < N; ++i) {
for (int j = s[i]-'a'+1; j < 26; ++j)
Ret += Frecventa[j];
++Frecventa[s[i]-'a'];
}
printf("%d\n", Ret);
}
int main() {
ReadData();
Solve();
return 0;
}