Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > ограничение по времени


Автор: rurik 5.9.2011, 09:56
Здравствуйте, подскажите пожалуйста что в данном простом коде занимает наибольшее количество времени


( ограничение по времени 20 мс а у меня 60 и выше)

Код

package codeforces;

import java.util.Scanner;

/**
 *
 * @author u.rastegaev
 */
public class DoubleCola {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        long n = sc.nextInt();
        // int m = 5 + n;
        int count = 0;
        for (int i = 0; i < n; i++) {
            if (n - 5 * Math.pow(2, i) > 0) {
            
            n = n - 5 * (int) Math.pow(2, i);
            
                count++;
            }

        }
        long namber = n / (long) Math.pow(2, count) + 1;

        switch ((int)namber) {
            case 1:System.out.print("Sheldon"); break;
            case 2:System.out.print("Leonard"); break;
            case 3:System.out.print("Penny"); break;
            case 4:System.out.print("Rajesh"); break;
            case 5:System.out.print("Howard"); break;
            default:break;
        }
        
    }
}

ссылка на сайт от куда задача   http://codeforces.ru/problemset/problem/82/A

Автор: LSD 5.9.2011, 10:13
Вот это определенно, занимает неопределенно много времени smile 
Код

long n = sc.nextInt();

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)