Я получил "Прервано из-за ошибки тайм-аута", когда я запускал свой код только для некоторых конкретных тестовых случаев. Хотя мой код успешно скомпилирован для других тестовых случаев. Может кто-нибудь помочь мне с этим?
Ссылка - https://www.hackerrank.com/challenges/phone-book
Постановка задачи :
Вам дают телефонную книгу, которая состоит из имен людей и их номера телефона. После этого вам будет дано имя человека в качестве запроса. Для каждого запроса выведите номер телефона этого человека.
Формат ввода:
В первой строке будет целое число, обозначающее количество записей в телефонной книге. Каждая запись состоит из двух строк: имя и соответствующий номер телефона.
После этого будут некоторые запросы. Каждый запрос будет содержать имя человека. Читайте запросы до конца файла.
Ограничения:
1 <= N <= 100000
1 <= Запрос <= 100000
Имя человека состоит только из строчных букв английского алфавита и может быть в формате "имя-фамилия" или в формате "имя-имя". Каждый номер телефона имеет ровно 8 цифр без начальных нулей.
Выходной формат :
Для каждого случая выведите "Не найдено", если у человека нет записи в телефонной книге. В противном случае напечатайте имя человека и номер телефона. Смотрите пример выходных данных для точного формата.
Чтобы облегчить проблему, мы предоставили часть кода в редакторе. Вы можете либо завершить этот код, либо написать полностью самостоятельно.
Мой код выглядит следующим образом:
import java.util.*;
import java.io.*;
class Solution
{
public static void main(String []args)
{
Scanner in = new Scanner(System.in);
int n=in.nextInt();
in.nextLine();
ArrayList<String> name = new ArrayList<String>();
int[] phone = new int[100000];
for(int i=0;i<n;i++)
{
name.add(in.nextLine());
phone[i]=in.nextInt();
in.nextLine();
}
while(in.hasNext())
{
String s=in.nextLine();
int a=name.indexOf(s);
if(a>=0)
{
System.out.println(s + "=" + phone[a] );
}
else
{
System.out.println("Not found");
}
}
}
}
PS: это мой первый вопрос на форуме. Я любитель изучения Java. Извините, если я нарушил любое из многих правил, задаваемых вопросом :(. Пожалуйста, исправьте меня и помогите мне внести свой вклад в сообщество здесь хорошим способом :)