Submission
Status:
--------------------
Subtask/Task Score:
0/100
Score: 0
User: theem1502
Problemset: สุ่มสลับ
Language: c
Time: 0.002 second
Submitted On: 2025-09-21 21:44:03
#include <stdio.h>
int factorial(int num) {
int w = 1;
if(num == 0) {
return 0;
}
for (int i = 1; i <= num; i++) {
w *= i;
}
return w;
}
int main() {
int prevchar= 100;
int num;
char mainstring[27];
scanf("%d %s", &num, mainstring);
int indexsum = 0;
for (int i = 0; i < num; i++) {
int currentnum = mainstring[i] - 'A';
if (prevchar < currentnum) {
currentnum -= 1;
}
prevchar = currentnum;
int something = factorial(num-i-1);
indexsum += something * currentnum;
printf("%d\n", something * currentnum);
}
printf("%d", indexsum + 1);
}