Я новичок в codechef. Пытался решить простую задачу при постановке задачи FANCY.
Копируем ниже формулировку проблемы для удобства:
Шеф-повар читал цитаты великих людей. Теперь он заинтересован в классификации всех модных цитат, которые он знает. Он думает, что все причудливые цитаты, содержащие слово «не», являются реальными фантазиями; цитаты, которые не содержат его, регулярно причудливы.
Вам даны некоторые цитаты. Для каждой цитаты вы должны указать шеф-повару, является ли она реальной фантазией или просто модной.
Input
Первая строка ввода содержит одно целое число T, обозначающее количество тестовых случаев. Описание Т-тестов приведено ниже.
Первая и единственная строка каждого теста содержит одну строку S, обозначающую кавычку.
выход
Для каждого теста выведите одну строку, содержащую строку «Real Fancy» или «регулярно Fancy» (без кавычек).
Ограничения
1≤T≤50
1≤ | S | ≤100
каждый символ S является либо строчной английской буквой, либо пробелом
подзадачи
Подзадача № 1 (100 баллов): исходные ограничения
Пример ввода
2
У меня нет причудливых цитат
когда ничего не идет направо, идите налево
Пример вывода
Real Fancy
регулярно фантазии
Мое решение ниже, которое отлично работает локально на моей машине, но дает NZEC исключение , когда я пытаюсь запустить на codechef. Отправка этого решения приводит к «Неправильному ответу». Использовал блок try / catch, потому что я прочитал здесь , что он избежит исключения, но все же ответ будет неправильным. Я не понимаю, где я ошибаюсь в этой простой задаче.
/* package codechef; // don't place package name! */
import java.util.Scanner;
public class Main
{
private final static String REAL_FANCY = "Real Fancy\n";
private final static String REGULARLY_FANCY = "regularly fancy\n";
private final static String MATCH_WORD = " not "; //note: space both sides
private final static String MATCH_WORD_START = "not "; //note: space at end
private final static String MATCH_WORD_END = " not";//note: space at start
public static void main(String[] args)
{
try
{
Scanner scanner = new Scanner(System.in);
int testCases = Integer.parseInt(scanner.nextLine());
StringBuilder output = new StringBuilder();
String str = null;
for (int i = 0; i < testCases; i++)
{
str = scanner.nextLine();
if (str.startsWith(MATCH_WORD_START) || str.contains(MATCH_WORD)
|| str.endsWith(MATCH_WORD_END))
output.append(REAL_FANCY);
else
output.append(REGULARLY_FANCY);
}
scanner.close();
System.out.println(output.substring(0, output.length() - 1));
}
catch (Exception e)
{
}
}
}