level05.lesson12.home05;

/* Вводить с клавиатуры числа и считать их сумму
Вводить с клавиатуры числа и считать их сумму, пока пользователь не введёт слово «сумма». Вывести на экран полученную сумму.
*/
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Solution
{
public static void main(String[] args) throws Exception
{
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int summ = 0;
for (; true; )
{
String text = bf.readLine();
if (text.equals(«сумма»))

System.out.println(summ);
else
{
int num = Integer.parseInt(text);
summ = summ + num;
}

}
}
}


в ИДЕА вроде проходит все мои проверки, но проверку сервера пройти не могу. Подскажите что упустил? Может break; куда то засунуть надо?
  • ,

package com.javarush.test.level05.lesson12.bonus03;

/* Задача по алгоритмам
Написать программу, которая:
1. вводит с консоли число N > 0
2. потом вводит N чисел с консоли
3. выводит на экран максимальное из введенных N чисел.
*/


import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Solution
{
    public static void main(String[] args) throws Exception
    {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        int maximum = 0;

        System.out.println("<<Введите число больше чем 0>>");
        int max = Integer.parseInt(reader.readLine());
        if ( max > 0)
        {
            System.out.println("<<Введите " + max + " чисел/числа/число)>>");
            int[] list = new int[max];
            for (int z = 0; z < max; z++)
        {
            String s = reader.readLine();
            list[z] = Integer.parseInt(s);
        }
            Arrays.sort(list);
            maximum=list[list.length-1];
        System.out.println(maximum);
        }
        //если число <0 закончить работу
    else System.exit(0);
    }
}


работает правильно, сервер не принимает, уже долго весит нерешенная, убирал if/else все равно не принимает.help
  • ,

level08.lesson08.task04

package com.javarush.test.level08.lesson08.task04;

import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.HashSet;



/* Удалить всех людей, родившихся летом
Создать словарь (Map<String, Date>) и занести в него десять записей по принципу: «фамилия» - «дата рождения».
Удалить из словаря всех людей, родившихся летом.
*/

public class Solution
{
    public static void main(String[] args)
    {
        HashMap<String,Date> map =createMap();
        removeAllSummerPeople(map);
        for (Map.Entry<String, Date> pair : map.entrySet())
        {
            System.out.println(pair.getKey() + " - " + pair.getValue());
        }
    }

    public static HashMap<String, Date> createMap()
    {
        HashMap<String, Date> map = new HashMap<String, Date>();
        map.put("Stallone", new Date("JUNE 1 1980"));
        map.put("Stlone", new Date("AUGUST 1 1980"));
        map.put("Stane", new Date("JUNE 2 1980"));
        map.put("Stallne", new Date("AUGUST 1 1980"));
        map.put("Stalloe", new Date("DECEmBER 1 1980"));
        map.put("Stallone", new Date("JANUARY 1 1980"));
        map.put("Sallone", new Date("MARCH 1 1980"));
        map.put("Sallon", new Date("JUNE 1 1982"));
        map.put("Stalone", new Date("JUNE 1 1983"));
        map.put("Stae", new Date("JUNE 1 1984"));

        //напишите тут ваш код
        return map;
    }

    public static void removeAllSummerPeople(HashMap<String, Date> map)
    {

        HashSet<String> set = new HashSet<String>();
        for (Map.Entry<String, Date> pair : map.entrySet()){
            int time = pair.getValue().getMonth() ;

            if (time > 4 && time < 8 ){
                set.add(pair.getKey());
            }
        }

        for (String s : set){
            map.remove(s);
        }
        //напишите тут ваш код

    }
}


результат правильный. сервер не пропускает. укажите слепцу на его ошибку…

Семафоры 16 уровень Потоки Нити

Кто понял? Объясните как и для чего использовать семафоры желательно на примере.
//Fat.java

public class Fat {
    private volatile double d; // Предотвращает оптимизацию
    private static int counter = 0;
    private final int id = counter++;
    
    public Fat() {
        // нагрузка
        for(int i = 1; i < 10000; i++) 
            d += (Math.PI + Math.E) / (double)i;
    }
    
    public void operation() { System.out.println(this); }
    public String toString() { return "Fat id: " + id; }
}

import java.util.concurrent.*;
import java.util.*;
import static net.mindview.util.Print.*;

class CheckoutTask<T> implements Runnable {
    private static int counter = 0;
    private final int id = counter++;
    private Pool<T> pool;
    
    public CheckoutTask(Pool<T> pool) {
        this.pool = pool;
    }
    
    public void run() {
        try {
            T item = pool.checkOut();
            print(this + "checked out " + item);
            TimeUnit.SECONDS.sleep(1);
            print(this +"checking in " + item);
            pool.checkIn(item);
        } catch(InterruptedException e) {}
    }
    
    public String toString() {
        return "CheckoutTask " + id + " ";
    }
}

public class SemaphoreDemo {
    final static int SIZE = 25;
    public static void main(String[] args) throws Exception {
        final Pool<Fat> pool = new Pool<Fat>(Fat.class, SIZE);
        ExecutorService exec = Executors.newCachedThreadPool();
        
        for(int i = 0; i < SIZE; i++)
            exec.execute(new CheckoutTask<Fat>(pool));
        
        print("All CheckoutTasks created");
        List<Fat> list = new ArrayList<Fat>();
        
        for(int i = 0; i < SIZE; i++) {
            Fat f = pool.checkOut();
            printnb(i + ": main() thread checked out ");
            f.operation();
            list.add(f);
        }
        
        Future<?> blocked = exec.submit(new Runnable() {
            public void run() {
                try {
                    pool.checkOut();
                } catch(InterruptedException e) {
                    print("checkOut() Interrupted");
                }
            }
        });
        
        TimeUnit.SECONDS.sleep(2);
        blocked.cancel(true); // Выход из заблокированного вызова
        print("Checking in objects in " + list);
        
        for(Fat f : list)
            pool.checkIn(f);
        
        for(Fat f : list)
            pool.checkIn(f); // Второй вызов checkIn игнорируется
        
        exec.shutdown();
    }
}