#include #include #include #include int solve(std::string s, std::vector used, int score) { int max_score = score; for (int i = 0; i < s.length(); i++) { for (int j = i + 1; j < s.length(); j++) { for (int k = j + 1; k < s.length(); k++) { if (s[i] != '0' && s[j] == s[k] && s[i] != s[j]) { if (!used[i] && !used[j] && !used[k]) { used[i] = used[j] = used[k] = true; max_score = std::max(solve(s, used, score + ((s[i] - '0') * 100 + (s[j] - '0') * 10+ (s[k] - '0'))), max_score); used[i] = used[j] = used[k] = false; } } } } } return max_score; } int main() { std::string s; std::cin >> s; std::vector used(s.length(), false); std::cout << solve(s, used, 0) << std::endl; return 0; }