Въпрос относно задача "11. Odd / Even Position"
Здравейте! Поради някаква грешка, решението ми дава 0 точки в judge:(
https://judge.softuni.bg/Contests/Practice/Index/154#10.
Бихте ли ми разяснили проблема, моля?
Здравейте! Поради някаква грешка, решението ми дава 0 точки в judge:(
https://judge.softuni.bg/Contests/Practice/Index/154#10.
Бихте ли ми разяснили проблема, моля?
Мисля, че грешката ти е на ред 11 при for цикъла. Трябва да e for($i = 1; $i <= $n; $i++). В условието е казано да броим от 1, така винаги първото число ще е на нечетна позиция, а второто на четна. При теб нечетните позиции се сумираха в sumeven заради това разминаване в for-a.
Споделям моето решение на JAVA e но все пак може да ти помогне :)
import java.util.Scanner;
public class OddEvenPosition {
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
int n = Integer.parseInt(console.nextLine());
double oddSum = 0.0;
double oddMin = 1000000000.0; // Double.MAX_Value;
double oddMax = -1000000000.0; // Double.MIN_Value;
double evenSum = 0.0;
double evenMin = 1000000000.0; // Double.MAX_Value;
double evenMax = -1000000000.0; //Double.MIN_Value;
for (int i = 1; i <= n; i++) {
double current = Double.parseDouble(console.nextLine());
if (i % 2 == 0) {
evenSum += current;
if (current < evenMin) {
evenMin = current;
}
if (current > evenMax) {
evenMax = current;
}
} else {
oddSum += current;
if (current < oddMin) {
oddMin = current;
}
if (current > oddMax) {
oddMax = current;
}
}
}
System.out.printf("OddSum= %f%n", oddSum);
if (oddMin == 1000000000.0) {
System.out.printf("OddMin=No%n");
} else {
System.out.printf("OddMin= %f%n", oddMin);
}
if (oddMax == -1000000000.0) {
System.out.printf("OddMax=No%n");
} else {
System.out.printf("OddMax= %f%n", oddMax);
}
System.out.printf("EvenSum= %f%n", evenSum);
if (evenMin == 1000000000.0){
System.out.printf("EvenMin=No%n");
} else {
System.out.printf("EvenMin=%f%n",evenMin);
}
if(evenMax== -1000000000.0){
System.out.printf("EvenMax=No%n");
} else {
System.out.printf("EvenMax= %f%n", evenMax);
}
}
}
Благодаря.
Нещо обаче се къса в моето решение и ми се иска да знаех какво точно..
Потърси във форума , няма начин да я няма тази задача и за PHP , все пак доста хора са минали от тук , все някой ще е споделил решение или ще има подобна тема ! Успех
Възможно е тестовете да са грешни:
Expected output:
oddsum 9 oddmin 2 oddmax 5 evensum 8 evenmin 1 evenmax 4
Test input:
6 2 3 5 4 2 1
Най-малкото нечетно се очаква да е 2 (?)
Сбора на четните да е 8 (?)
Най-голямото четно да е 4 (?) и т.н.
Благодаря!
Получих 100 след твоя съвет..