Vowel to Length Ratio

Здравейте на всички!

Не разбирам защо инпута в array[0] в String[] inputs се инициализира като null,

то ест:

input:
4
pizza
macaroni
kiufte
banica

и става така:
String[] inputs = {"", pizza, macaroni, kiufte};

Помощ!

Vowel to Length Ratio

You are still hungry!

The objective criteria of finding the food with the longest length is not working anymore. Continuing the idea of thinking outside the box, you decide to introduce a new rule - the best food is the one with the least vowels-to-letters ratio.
For instance:

  • pizza → 2/5 (2 vowels, 5 letters)
  • macaroni → 4/8 (4 vowels, 8 letters)

Pizza is clearly better.

The vowels are ‘aouei’

If two foods share the same ratio, choose the one with more vowels. If they have the same ratio and same number of vowels, choose the one with more letters.

Input

  • The input consists of several lines
  • On the first line - integer N - the number of lines to follow
  • On the next N lines - each food

Output

  • Output the best food and its ratio in format `food vowels/letters’

Constraints

1 <= lines <= 20

Sample Tests

Input

4
pizza
macaroni
kiufte
banica

Output

pizza 2/5

Input

3
macaroni
kiufte
banica

Output

macaroni 4/8

КОДЪТ ми:

p-s:
знам че if-else е грешен, ама първо трябва да оправя инпута :slight_smile:

Благодаря предварително!

nextInt() не преминава на следващия ред, затова първия nextLine() от цикъла чете празен стринг от края на реда с числото. Или трябва да действаш само с nextLine(), или след nextInt() трябва да извикваш и nextLine(), ако следващия инпут е на нов ред.

1 Like

да, забравих за това…

Integer.parseInt(scanner.nextLine());

не сложих Solved, че може да се наложи да уточня и нещо друго относно таска, иначе инпута е оправен, Благодаря!

Този код минава само 2 от 6 теста:

Може ли някой да го види, че с дебъгера не успях да открия проблем.

Благодаря предварително!

Дали някой ще може да ми обясни какъв output се очаква в последните два теста?

Логиката беше че letters - включват и vowels, пък в тестовете където има само гласните или само съгласните букви - judge дава грешка.

П-С:
горе-постнатият код няма връзка с кода върху който работя вмомента, искам само съвет/разяснение относно това какъв output се очаква в последните двата теста.

Благодаря предварително!

image

Когато буквите са еднакви принтиш най-дългата дума,съответно ако има гласни ги броиш.
Пише го в условието : “If two foods share the same ratio, choose the one with more vowels. If they have the same ratio and same number of vowels, choose the one with more letters.”

1 Like

сега направих промяната в кода, минават 1,2,3,4 и 6 тестовете, 5-ти все още дава грешка.

ръчно тествах ето тези I/O:

input:
3
ааа
ааааа
аааа

output:
ааааа 0/5

input:
3
aaa
bbb
aaaa

output:
aaaa 4/4

input:
3
aaa
aaa
bbbb

output:
bbbb 0/4

ето го кода ми:

Дали някой може ли да види кода ми и да даде хинт?

Благодаря предварително!