QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#346561#4774. Please, go firstPetroTarnavskyi#AC ✓9ms3836kbC++20790b2024-03-08 17:50:292024-03-08 17:50:30

Judging History

你现在查看的是最新测评结果

  • [2024-03-08 17:50:30]
  • 评测
  • 测评结果:AC
  • 用时:9ms
  • 内存:3836kb
  • [2024-03-08 17:50:29]
  • 提交

answer

#include <bits/stdc++.h>

using namespace std;

#define FOR(i, a, b) for(int i = (a); i < (b); i++)
#define RFOR(i, a, b) for(int i = (a) - 1; i >= (b); i--)
#define SZ(a) int(a.size())
#define ALL(a) a.begin(), a.end()
#define PB push_back
#define MP make_pair
#define F first
#define S second

typedef long long LL;
typedef vector<int> VI;
typedef pair<int, int> PII;
typedef double db;

void solve()
{
	int n;
	cin >> n;
	string s;
	cin >> s;
	map<char, int> last, cnt;
	LL ans = 0;
	FOR(i, 0, n)
	{
		last[s[i]] = i;
		ans -= cnt[s[i]];
		cnt[s[i]]++;
	}
	FOR(i, 0, n)
		ans += last[s[i]] - i;
	cout << 5 * ans << "\n";
}

int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	int t;
	cin >> t;
	while (t--)
	{
		solve();
	}
	return 0;
}

详细

Test #1:

score: 100
Accepted
time: 0ms
memory: 3604kb

input:

2
6
AABABB
10
Ab9AAb2bC2

output:

15
45

result:

ok 2 lines

Test #2:

score: 0
Accepted
time: 9ms
memory: 3836kb

input:

30
6
AABABB
10
Ab9AAb2bC2
1
R
2
ba
3
0b0
3
666
11
BACADAEAFAG
33
ooolll444PPyygg99YYIIrrol4Pyg9YIr
50
EJTdfKePfCTUZpcYkQQROhJCaaNBTFAYMRJBclQPnhjUfUCXkR
75
BCCACCBBAACACCBABCAAAACACCACBAACCAACCBAACABBBAACABCBCACCAABCBCCBACBCBAABACA
112
FPHAJBKFKLLAIHENPDOIMLEFEDKFOLJDLAEEBOJMKEMCLAPLDNDAIHFMLPCJKLNF...

output:

15
45
0
0
5
0
50
1650
2255
8780
23365
42580
127740
290425
670250
1568755
3610180
8108515
19000400
34665300
100509020
226220730
510057265
1099335630
0
781179700
1529224115
1338910680
1510221160
1533484180

result:

ok 30 lines