Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve(params) {
- let Num = +params.shift();
- let Arr = [];
- let pattern = /^(?<users>[A-Za-z]{5,})@(?<domains>[a-z]{3,}\.(bg|com|org))$/
- for (let line of params) {
- let matched = pattern.exec(line);
- if (matched === null) {
- continue;
- }
- let nameUser = matched[1];
- let domainUser = matched[2];
- let indexOf = Arr.findIndex((object) => {
- return object.domainUser === domainUser;
- });
- if (indexOf < 0) {
- Arr.push({
- domainUser,
- nameUser: [nameUser],
- count: 1
- });
- } else if(!Arr[indexOf].nameUser.includes(nameUser)) {
- Arr[indexOf].nameUser.push(nameUser);
- Arr[indexOf].count++;
- }
- }
- Arr.sort(function (a, b) {
- if (a.count === b.count) {
- return a.domainUser.localeCompare(b.domainUser);
- } else {
- return b.count - a.count;
- }
- });
- Arr.forEach((line) => {
- console.log(`${line.domainUser}:`);
- line.nameUser.forEach((EachnameUser) => {
- console.log(`### ${EachnameUser}`);
- });
- });
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement