/C06041 - Xâu con lớn nhất

<Problem>

https://code.ptit.edu.vn/student/question/C06041
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
#include <math.h>
#include <ctype.h>

int main() {
	char s[100001];
	gets(s);

	int len = strlen(s);
	int p = 0;

	while (p < len) {
		char c = s[p];
		for (int i = p; i < len; i++) {
			if (c < s[i]) {
				c = s[i];
			}
		}

		for (int i = p; i < len; i++) {
			if (c == s[i]) {
				printf("%c", s[i]);
				p = i + 1;
			}
		}
	}

	return 0;
}