-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathC.js
More file actions
30 lines (24 loc) · 2.82 KB
/
Copy pathC.js
File metadata and controls
30 lines (24 loc) · 2.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Телефонные номера в адресной книге мобильного телефона имеют один из следующих форматов: +7<код><номер> 8<код><номер> <номер> где <номер> — это семь цифр, а <код> — это три цифры или три цифры в круглых скобках. Если код не указан, то считается, что он равен 495. Кроме того, в записи телефонного номера может стоять знак “-” между любыми двумя цифрами (см. пример). На данный момент в адресной книге телефона Васи записано всего три телефонных номера, и он хочет записать туда еще один. Но он не может понять, не записан ли уже такой номер в телефонной книге. Помогите ему! Два телефонных номера совпадают, если у них равны коды и равны номера. Например, +7(916)0123456 и 89160123456 — это один и тот же номер.
// Формат ввода
// В первой строке входных данных записан номер телефона, который Вася хочет добавить в адресную книгу своего телефона. В следующих трех строках записаны три номера телефонов, которые уже находятся в адресной книге телефона Васи. Гарантируется, что каждая из записей соответствует одному из трех приведенных в условии форматов.
// Формат вывода
// Для каждого телефонного номера в адресной книге выведите YES (заглавными буквами), если он совпадает с тем телефонным номером, который Вася хочет добавить в адресную книгу или NO (заглавными буквами) в противном случае.
import { input, output } from '../../input-output_dev.js';
function inputProcessing(lines) {
const [basePhone, ...phones] = lines.map((phonesRaw) =>
phonesRaw.replace(/\D/g, '').padStart(11, '8495').slice(1)
);
const result = phones.map((phone) => (phone === basePhone ? 'YES' : 'NO'));
return result;
}
(async () => {
const inputLines = await input(4);
console.log({ inputLines });
const outputLines = inputProcessing(inputLines);
console.log({ outputLines });
output(outputLines);
})();
// 8(495)430-23-97
// +7-4-9-5-43-023-97
// 4-3-0-2-3-9-7
// 8-495-430