• ,

Как вы решаете задачи?

Здравствуйте, человеки!
При решении задач часто возникает вопрос — как же другие люди решают задачи?
Так как каждого самостоятельно не спросишь, то прошу проголосовать всем кому интересно.

Не проходит тестирование level15.lesson09.task02

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/* Статики 2
1. В статическом блоке считайте две переменные с консоли А и В с типом int.
2. Не забыть про IOException, который надо обработать в блоке catch.
3. Закрыть поток ввода методом close().
*/

public class Solution {
public static int A;
public static int B;

static
{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try
{

int A = Integer.parseInt(reader.readLine());
int B = Integer.parseInt(reader.readLine());
reader.close();
} catch (IOException e){
}
}

public static final int MIN = min(A, B);

public static void main(String[] args) {
System.out.println(MIN);
}

public static int min(int a, int b) {
return a < b? a: b;
}
}
  • ,

Ошибка компиляции задач на сервере и влияние на статистику

Столкнулся с проблемой. Решение задачи отрабатывает в Intellij IDEA, но при попытки проверить плагин выдает ошибку компиляции. После нескольких попыток с незначительными изменениями кода (которые результата также не давали) сделал следующее:
Загрузил чистое условие задачи, повторил решение (один в один) и результат был положительный.
  • ,

level22.lesson18.big01 - 12;

Пока разбиралась с 12 пунктом задания, составила набор статей. Возможно, кому-нибудь пригодится:

Статьи, чтобы разобраться:
Queue
www.seostella.com/ru/article/2012/08/09/kollekcii-collections-v-java-queue.html
docs.oracle.com/javase/7/docs/api/java/util/Queue.html

ArrayBlockingQueue
docs.oracle.com/javase/7/docs/api/java/util/concurrent/ArrayBlockingQueue.html

KeyEvent
docs.oracle.com/javase/7/docs/api/java/awt/event/KeyEvent.html

JFrame
ru.wikibooks.org/wiki/Java/%D0%9F%D0%B5%D1%80%D0%B2%D0%BE%D0%B5_%D0%BE%D0%BA%D0%BD%D0%BE

focuslistener
javaswing.wordpress.com/2009/08/25/focuslistener/

GridBadJayout
www.frolov-lib.ru/programming/javasamples/vol5/vol5_5/

keyListener
javaswing.wordpress.com/2009/12/23/keylistener_using/

ЗЫ. Не могу создавать топики в разделе Решение задач. Если кто-нибудь поможет, буду благодарна!

Процент решения задач.

Уже решил больше 600 задач; и каждый раз когда удаётся решить с первого раза выдаётся примерно такой текст:
Программа успешно прошла тестирование.
Вы решили задачу лучше, чем 91% учеников.
Вам удалось решить ее с 1 попытки.
Среднее к-во попыток для этой задачи — 2.4674

Эти 91% учеников решили задачу не с 1-го раза?!
Некоторые типы задач достаточно легки чтобы их понять. Например: на начальных лвлах была задача поставить один модификатор static. Решая 3-ю задачу подряд с таким заданием её легко решить, и этих людей должно быть уж точно меньше 80% (хотя такую цифру я кажется ни разу не видел).
Короче говоря, на сервере корректно считается процент… или это сделано, чтобы можно было гордится за себя каждый раз, когда решил с 1-го раза?

level08.lesson11.home09

Друзья! Уже перепробовал множество вариантов :-%) и все никак не принимает.

public class Solution
{
    public static void main(String[] args) {
        System.out.println(isDateOdd("SEPTEMBER 5 2014"));

    }

    public static boolean isDateOdd(String date)
    {
        long today = new Date(date).getTime();
        long firstJanuary = new Date("JANUARY 1 2014").getTime();

        return (((today - firstJanuary) / 1000 / 60 / 60 / 24) % 2) == 1;

    }
}


В диапазоне месяца в обе стороны все работает как часы, меняя вывод с четного на нечетное в зависимости от дня. Что может быть не так?

С датой немного погорячился… правильно считает с 1 января

com.javarush.test.level05.lesson12.home02;

не проходит проверку такой код, хотя все работает при отладке.

public class Solution
{
    public static void main(String[] args)
    {
        // Создай по два объекта каждого класса тут
        Man man1 = new Man("Man1",11,"man1adr");
        Man man2 = new Man("Man2",12,"man1adr2");

        WoMan woman1 = new WoMan("WoMan1",11,"woman1adr");
        WoMan woman2 = new WoMan("WoMan2",12,"woman1adr2");

        // Выведи их на экран тут

        System.out.println(man1);
        System.out.println(man2);

        System.out.println(woman1);
        System.out.println(woman2);

    }

    // Напиши тут свои классы
    public static class Man{
        public String name, address;
        public int age;

        public Man(String name, int age, String address){
            this.name  = name;
            this.age  = age;
            this.address=address;
        }


        public String toString()
        {
            return this.name + " " + this.age + " " + this.address;
        }
    }

    public static class WoMan{
        public String name, address;
        public int age;

        public WoMan(String name, int age, String address){
            this.name  = name;
            this.age  = age;
            this.address=address;
        }


        public String toString()
        {
            return this.name + " " + this.age + " " + this.address;
        }
    }
}


помогите разобраться, в чем проблема?
  • ,

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

Не могу понять почему не проходит, куда копать?

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

import java.util.HashMap;
import java.util.Map;

/* Вывести на экран список ключей
Есть коллекция HashMap<String, String>, туда занесли 10 различных строк. Вывести на экран список ключей, каждый элемент с новой строки.
*/

public class Solution
{
    public static void main(String[] args) throws Exception
    {
        HashMap<String, String> map = new HashMap<String, String>();
        map.put("Sim", "Sim");
        map.put("Tom", "Tom");
        map.put("Arbus", "Arbus");
        map.put("Baby", "Baby");
        map.put("Cat", "Cat");
        map.put("Dog", "Dog");
        map.put("Eat", "Eat");
        map.put("Food", "Food");
        map.put("Gevey", "Gevey");
        map.put("Hugs", "Hugs");

        printKeys(map);
    }

    public static void printKeys(Map<String, String> map)
    {
        for (Map.Entry<String, String> pair : map.entrySet()){
            System.out.println(pair.getKey());
        }
    }
}


главное, что в самой IDEA ответ нормально проходит:
Sim
Baby
Cat
Gevey
Eat
Food
Dog
Tom
Hugs
Arbus

Process finished with exit code 0


а вот при проверке пишет: «Возникла ошибка во время работы програмы»
  • ,

level08.lesson08.task05 Разбор полетов

Со всех задач, решенных на JavaRush, застрял именно на этой конкретно, и понял, что остались не понятные моменты по Set, Map, Iterator. Прошу помощи знающих :)

/* Удалить людей, имеющих одинаковые имена
Создать словарь (Map<String, String>) занести в него десять записей по принципу «фамилия» - «имя».
Удалить людей, имеющих одинаковые имена.
*/
public class Solution
{
    public static HashMap<String, String> createMap()
    {
        HashMap<String, String> map = new HashMap<String, String>();
        map.put("Сидоров", "Сидор");
        map.put("Федоров", "Федя");
        map.put("Николаев", "Коляба");
        map.put("Егоров", "Жорик");
        map.put("Светка", "Чветка");
        map.put("Костин", "Костямба");
        map.put("Киров", "Кирюха");
        map.put("Стоянова", "Стоя");
        map.put("Петров", "Петруччо");
        map.put("Оля", "Коля");

        return map;
    }

public static void removeTheFirstNameDuplicates(HashMap<String, String> map)
    {
        HashMap<String, String> map2 = new HashMap<String, String>(map); //дубликат map
        HashMap<String, String> map3 = new HashMap<String, String>(map); //дубликат map

        for (Map.Entry<String, String> pair : map2.entrySet())
        {
            map3.remove(pair.getKey());

            if (map3.containsValue(pair.getValue()))
            {
                removeItemFromMapByValue(map, pair.getValue());
            }
        }
    }


В коллекции map значения никак не упорядочены, но всё равно порядок какой-то должен быть произвольный, они же(значения) не плавают там как рыбы в океане, динамично перемещаясь по ячейкам памяти. Т.е. если в map ключ-значение «Иванов» — «Петя» первое, то и в дубликате map2 оно будет тоже первым. Верно?
map3.remove(pair.getKey()); — удаляем из map3 первую пару значений
if (map3.containsValue(pair.getValue())) — по логике вещей при одном прохождении цикла for get.Key и getValue для все map(2)(3) будет первое значение, допустим «Сидоров». Такого что б getValue для map2 и getValue для map3 вызывал разные значение быть не может, при условии что map3 и map2 копии map?