Submission #6309487


Source Code Expand

#include<iostream>
#include<cmath>
#include<cstdlib>
#include<string>
#include<cstring>
#include<algorithm>
#include<vector>
#include<map>
#include<iomanip>

using namespace std;

typedef long long ll;

typedef std::pair<int, int> ipair;
bool lessPair(const ipair& l, const ipair& r){return l.second < r.second;}
bool morePair(const ipair& l, const ipair& r){return l.second > r.second;}

template<class T> inline bool chmin(T& a, T b) {
    if (a > b) {
        a = b;
        return true;
    }
    return false;
}
template<class T> inline bool chmax(T& a, T b) {
    if (a < b) {
        a = b;
        return true;
    }
    return false;
}

const ll MOD = 1e9 + 7;
// const long long INF = 1LL<<60;
void add(long long &a, long long b) { a += b; if (a >= MOD) a -= MOD; }
void sub(long long &a, long long b) { a -= b; if (a < 0) a += MOD; }
void mul(long long &a, long long b) { a *= b; a %= MOD; }
ll llmin(ll a, ll b) { if (a < b) return a; else return b; }
ll llmax(ll a, ll b) { if (a < b) return b; else return a; }
ll llabs(ll a) { if (a >= 0) return a; else return - a; }
ll llmodpow(ll a, ll n) {
   if (n == 0) return 1;
   ll tmp = llmodpow(a, n / 2);
   mul(tmp, tmp);
   if (n & 1) mul(tmp, a);
   return tmp;
}

int main() {
   string S;
   cin >> S;
   ll N = S.size();
   map<char, int> log;
   for (int i = 0; i < N; i++) {
      log[S[i]]++;
   }
   ll ans = N * (N - 1) / 2;
   for (auto it = log.begin(); it != log.end(); it++) {
      ll n = it->second;
      ans -= n * (n - 1) / 2;
   }
   cout << ans + 1 << endl;
   return 0;
}

Submission Info

Submission Time
Task B - Reverse and Compare
User redultimate
Language C++14 (GCC 5.4.1)
Score 500
Code Size 1621 Byte
Status AC
Exec Time 13 ms
Memory 640 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
AC × 3
AC × 23
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
subtask_1_01.txt AC 1 ms 256 KB
subtask_1_02.txt AC 8 ms 640 KB
subtask_1_03.txt AC 1 ms 256 KB
subtask_1_04.txt AC 1 ms 256 KB
subtask_1_05.txt AC 1 ms 256 KB
subtask_1_06.txt AC 1 ms 256 KB
subtask_1_07.txt AC 2 ms 256 KB
subtask_1_08.txt AC 13 ms 640 KB
subtask_1_09.txt AC 9 ms 640 KB
subtask_1_10.txt AC 10 ms 640 KB
subtask_1_11.txt AC 12 ms 640 KB
subtask_1_12.txt AC 9 ms 640 KB
subtask_1_13.txt AC 9 ms 640 KB
subtask_1_14.txt AC 8 ms 640 KB
subtask_1_15.txt AC 8 ms 640 KB
subtask_1_16.txt AC 9 ms 640 KB
subtask_1_17.txt AC 9 ms 640 KB