| Task: | Anagrams |
| Sender: | sfjiang |
| Submission time: | 2020-09-26 15:22:30 +0300 |
| Language: | C++ (C++11) |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.05 s | details |
| #2 | ACCEPTED | 0.25 s | details |
| #3 | ACCEPTED | 0.10 s | details |
| #4 | ACCEPTED | 0.26 s | details |
| #5 | ACCEPTED | 0.25 s | details |
| #6 | ACCEPTED | 0.24 s | details |
| #7 | ACCEPTED | 0.01 s | details |
| #8 | ACCEPTED | 0.00 s | details |
| #9 | ACCEPTED | 0.01 s | details |
Compiler report
input/code.cpp: In function 'int main()':
input/code.cpp:33:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
scanf("%d", &n);
~~~~~^~~~~~~~~~
input/code.cpp:37:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
scanf("%s", tmp);
~~~~~^~~~~~~~~~~Code
#include <cstdio>
#include <cstring>
#include <algorithm>
const int maxn = 400010;
struct Data
{
char ori[40];
char sorted[40];
int len;
Data(char* input)
{
strcpy(ori, input);
strcpy(sorted, input);
len = strlen(input);
std::sort(sorted, sorted + len);
}
Data() {}
};
bool cmpData(const Data& p, const Data& q)
{
return strcmp(p.sorted, q.sorted) < 0;
}
Data data[maxn];
int main()
{
int n;
scanf("%d", &n);
for (int i = 0; i < n; i++)
{
char tmp[40];
scanf("%s", tmp);
data[i] = Data(tmp);
}
std::sort(data, data + n, cmpData);
int cnt = 0;
for (int i = 0; i < n;)
{
int j = i;
for (; j < n &&
strcmp(data[i].sorted, data[j].sorted) == 0; j++ );
if (j - i > 1)
{
cnt++;
}
/*printf("%d\n", j - i);
for (int k = i; k < j; k++)
{
printf("%s\n", data[k].ori);
}*/
i = j;
}
printf("%d\n", cnt);
for (int i = 0; i < n;)
{
int j = i;
for (; j < n &&
strcmp(data[i].sorted, data[j].sorted) == 0; j++ );
if (j - i > 1)
{
printf("%d\n", j - i);
for (int k = i; k < j; k++)
{
printf("%s\n", data[k].ori);
}
}
i = j;
//cnt++;
}
return 0;
}Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 68760 aakkonen aakkosellinen aakkosellisesti aakkosellisuus ... |
| correct output |
|---|
| 3076 2 haaraantua raahaantua 2 ... |
| user output |
|---|
| 3076 2 raahaantua haaraantua 2 ... Truncated |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 370099 a aa aaa aah ... |
| correct output |
|---|
| 30178 2 basiparachromatin marsipobranchiata 2 ... |
| user output |
|---|
| 30178 2 basiparachromatin marsipobranchiata 2 ... Truncated |
Test 3
Verdict: ACCEPTED
| input |
|---|
| 100000 cnhmuewgnum dxkmhzhetnmxadtcy hfjqwavsiguwpludsketibe xwxolrmvkz ... |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 4
Verdict: ACCEPTED
| input |
|---|
| 400000 vlcsa eltwde wdcwwkubs tmuxbirj ... |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 5
Verdict: ACCEPTED
| input |
|---|
| 400000 ebhfigdacjlk aecfdijlhkgb jfekhbidacgl cehajbidfklg ... |
| correct output |
|---|
| 1 400000 abcdeighjlfk abcdeiglhfjk abcdfkilejgh ... |
| user output |
|---|
| 1 400000 ihdbalcfjgek eblifdcgjhak dkcflgheiajb ... Truncated |
Test 6
Verdict: ACCEPTED
| input |
|---|
| 400000 cbaabghadefb hbbgfaeabdac abaedcbgfbha hcfadbbbeaag ... |
| correct output |
|---|
| 1 400000 aaabbbcfegdh aaabbbcfghed aaabbbdcgfhe ... |
| user output |
|---|
| 1 400000 gbbaadaechbf hgdafacbaebb bbadhfacabge ... Truncated |
Test 7
Verdict: ACCEPTED
| input |
|---|
| 1 a |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
Test 8
Verdict: ACCEPTED
| input |
|---|
| 2 ab ba |
| correct output |
|---|
| 1 2 ab ba |
| user output |
|---|
| 1 2 ab ba |
Test 9
Verdict: ACCEPTED
| input |
|---|
| 2 aa ab |
| correct output |
|---|
| 0 |
| user output |
|---|
| 0 |
