Loading...
Spaskich avatar Spaskich 36 Точки

На четвърти тест ти дава грешка, защото числата са ти в int. Направи ги на long, защото явно пускат тестове с по-големи числа. Съветвам те обаче да си оптимизираш решението.

Аз обаче имам друг проблем - гърми ми по време на изпълнение на последния тести и, честно казано, нямам идея каква може да е причината. Ето го моят код:

package com.company;

import java.util.ArrayDeque;
import java.util.Queue;
import java.util.Scanner;

/**
 * Created by spask on 17.5.2016 г..
 */
public class CalculateSequenceWithQueue {
    public static void main(String[] args) {
        Queue<Long> sequence = new ArrayDeque<>();

        Scanner sc = new Scanner(System.in);
        long firstNum = sc.nextInt();
        sequence.add(firstNum);

        for (int i = 0; i < 50; i++) {
            long headOfQueue = sequence.peek();
            sequence.add(headOfQueue + 1);
            sequence.add(headOfQueue * 2 + 1);
            sequence.add(headOfQueue + 2);

            System.out.print(sequence.remove() + " ");
        }
    }
}

 

4
AntonPortenov avatar AntonPortenov 102 Точки

Честно казано не знам какво е условието, но първото което забелязвам и може да е проблем е, че въпркеки че инициализираш long му даваш nextInt вместо nextLong

2
17/05/2016 17:15:00
kaloyannikov avatar kaloyannikov 531 Точки

проблема ти е , че четеш nextInt() и ако числото е по-голямо ти хвърля InputMismatchException

http://pastebin.com/NYFqM2Qt имах и аз същия проблем и пробвах с вход по-голям от int и тогава вече видях ,че трябва да е nextLong().

3
17/05/2016 17:33:44
Spaskich avatar Spaskich 36 Точки

Wow, аз съм идиот! Благодаря, колеги, направил съм го инерция!

1
17/05/2016 17:56:46
stellastoyanova avatar stellastoyanova 26 Точки

Много ти благодаря!

2
BobbyD avatar BobbyD 0 Точки

Промени long firstNum = sc.nextInt(); на long firstNum = sc.nextLong(); и ще изкараш 100 / 100

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.