• ,

level07.lesson09.task03

   Добрый день, уважаемые. Сижу над очередной задачей по ArrayList, и ещё больше понимаю, что абсолютно не понимаю как же в памяти происходят все эти процессы. Для того чтобы выразить свою мысль, я процитирую условие задачи, и как я понимаю, как оно должно работать. Условие задачи:
1. Создай список из слов «мама», «мыла», «раму».
2. После каждого слова вставь в список строку, содержащую слово «именно».
   Значит допустим, есть некий внутренний массив. Изначально мы вносим туда три слова: мама, мыла, раму (условно s1, s2, s3). Соответственно: s1 встаёт на ячейку в массиве «0», s2 — «1», и s3 на «2». По условию задачи нам надо вставить после каждого слова «именно». Как я понимаю, чтобы осуществить это, нам надо как бы «раздвинуть слова в массиве». То есть, s2 поставить в ячейку «2», а s3 в ячейку «4» (как на скриншоте).

Соответственно этому, по-моему сам процесс происходит следующим образом:
  1. Берем данные из ячейки #1 и копируем её в ячейку #2
  2. Данные из ячейки #2 переносятся в ячейку #3
  3. Берем данные из ячейки #3 и копируем в ячейку #4
Теперь в ячейки #1, #3 и #5 вставляем слово «именно». Собственно это я попытался выполнить в программе вручную без цикла, чтобы понять как оно работает.

list.add(2, list.get(1));
        list.add(4, list.get(3));

        list.add(1, "именно");
        list.add(3, "именно");
        list.add(5, "именно");

Вывод этого:
мама
именно
мыла
именно
мыла
именно
раму
раму

Прошу разобраться как же сделать эту задачу, и почему именно так. Заранее благодарен.
P.S. приношу извинение за такое огромное объяснение.
P.P.S. бывают такие темы, когда ну ни в какую не доходит, хоть застрелись.

Система уравнений

Нужно решить систему уравнений в положительных действительных числах:


Подобрал такое решение — (1/18; 1/20; 1/15). Проверил на wolframalpha — да, решение такое и оно единственное.
Помогите пожалуйста решить задание математически, а не подбором. Буду благодарен за помощь.

Интересная задача

Имеется четыре острова: А, B, C, D. На трех островах (A, B, C) по 2000 жителей, а на D — 2015. Можно ли через какое-то количество дней сделать, чтобы на островах B, C, D было 2000 жителей, а на А — 2015, если каждый день с одного из островов на все остальные переселяется по одному человеку.

Можно ли решить это задание? Буду благодарен за любую помощь.
  • ,

level07.lesson06.task04; не проходит проверку, хотя все работает. Помогите пожалуйста!

package com.javarush.test.level07.lesson06.task04;

/* 5 строчек в начало списка
1. Создай список строк.
2. Добавь в него 5 строчек с клавиатуры, но только добавлять не в конец списка, а в начало.
3. Используя цикл выведи содержимое на экран, каждое значение с новой строки.
*/

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

public class Solution
{
    public static void main(String[] args) throws Exception
    {
       ArrayList<String> S = new ArrayList<String>();
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        for (int i = 0; i > 4; i++)
        {
            S.add(0, reader.readLine());
        }
        for (int i = 0; i < 4; i++)
        {
            System.out.println(S.get(i));
        }//напишите тут ваш код

    }
}


При вводе 1, 2, 3, 4, 5 выводит:

5
4
3
2
1

При этом проверку не проходит.Что я не так делаю?

level14.lesson06.home01

Solution.java
package com.javarush.test.level14.lesson06.home01;

/* Куриная фабрика
Написать Фабрику(Factory) по производству кур(Hen)
1. Создать класс Hen
1.1. Сделать его абстрактным
1.2. Добавить в класс абстрактный метод  int getCountOfEggsPerMonth()
1.3. Добавить в класс метод String getDescription(), который возвращает строку "Я курица."

2. Создать класс RussianHen, который наследуется от Hen
3. Создать класс UkrainianHen, который наследуется от Hen
4. Создать класс MoldovanHen, который наследуется от Hen
5. Создать класс BelarusianHen, который наследуется от Hen

6. В каждом из четырех последних классов написать свою реализацию метода getCountOfEggsPerMonth.
Методы должны возвращать количество яиц в месяц от данного типа куриц.

7. В каждом из четырех последних классов написать свою реализацию метода getDescription.
Методы должны возвращать строку вида:
<getDescription() родительского класса>  + <" Моя страна - SSSSS. Я несу N яиц в месяц.">
где SSSSS - название страны
где N - количество яиц в месяц

8. В классе HenFactory реализовать меетод getHen, который возвращает соответствующую стране породу кур
9. Все созданные вами классы должны быть в отдельных файлах
*/

public class Solution
{
    public static void main(String[] args)
    {
        Hen hen = HenFactory.getHen(Country.BELARUS);
        hen.getCountOfEggsPerMonth();
    }

    static class HenFactory {

        static Hen getHen(String country) {
            Hen hen = null;
            if (country.equals(Country.BELARUS)) { hen = new BelarusianHen();}
            if (country.equals(Country.MOLDOVA)) {hen =new MoldovanHen();}
            if (country.equals(Country.RUSSIA)) {hen = new RussianHen();}
            if (country.equals(Country.UKRAINE)) {hen = new UkrainianHen(); }
            return hen;
        }
    }

Hen.java

<code>package com.javarush.test.level14.lesson06.home01;
public abstract class Hen {
    public abstract int getCountOfEggsPerMonth();


    public String getDescription() {
        return "Я курица.";
    }

}


RussianHen.java

package com.javarush.test.level14.lesson06.home01;
public class RussianHen extends Hen
{

    @Override
    public int getCountOfEggsPerMonth()
    {
        return 35;
    }
    public String getDescription() {
        return super.getDescription() + " Моя страна - "+ Country.RUSSIA+". Я несу "+getCountOfEggsPerMonth() +" яиц в месяц.";
    }
}


MoldovanHen.java

package com.javarush.test.level14.lesson06.home01;
public class MoldovanHen extends Hen
{
    @Override
    public int getCountOfEggsPerMonth()
    {
        return 31;
    }
    public String getDescription() {
        return super.getDescription() + " Моя страна - "+ Country.MOLDOVA+ ". Я несу " + getCountOfEggsPerMonth() +" яиц в месяц.";
    }
}


UkrainianHen.java

package com.javarush.test.level14.lesson06.home01;
public class UkrainianHen extends Hen
{
    @Override
    public int getCountOfEggsPerMonth()
    {
        return 47;
    }
    public String getDescription() {
        return super.getDescription() + " Моя страна - " + Country.UKRAINE+ ". Я несу "+getCountOfEggsPerMonth() +" яиц в месяц.";
    }
}


BelarusianHen.java

package com.javarush.test.level14.lesson06.home01;
public class BelarusianHen extends Hen
{
    @Override
    public int getCountOfEggsPerMonth()
    {
        return 27;
    }
    public String getDescription() {

        return super.getDescription() + " Моя страна - "+ Country.BELARUS+". Я несу "+getCountOfEggsPerMonth() +" яиц в месяц.";

    }
}


Country.java

package com.javarush.test.level14.lesson06.home01;

public interface Country
{
    String UKRAINE = "Ukraine";
    String RUSSIA = "Russia";
    String MOLDOVA = "Moldova";
    String BELARUS = "Belarus";
}


Задача решена правильно, сервер отказывается принимать, может где то ошибка есть посмотрите не «замыленым» глазом

leve08.lesson11.home09

package com.javarush.test.level08.lesson11.home09;

import java.util.Date;

/* Работа с датой
1. Реализовать метод isDateOdd(String date) так, чтобы он возвращал true, если количество дней с начала года - нечетное число, иначе false
2. String date передается в формате MAY 1 2013
Пример:
JANUARY 1 2000 = true
JANUARY 2 2020 = false
*/

public class Solution
{
    public static void main(String[] args)
    {
        isDateOdd("MAY 1 2013");
    }

    public static boolean isDateOdd(String date)
    {
        Date yerStart = new Date();
        yerStart.setHours(0);
        yerStart.setMinutes(0);
        yerStart.setSeconds(0);
        yerStart.setDate(1);
        yerStart.setMonth(0);

        Date currentTime = new Date(date);
        long sad = currentTime.getTime() - yerStart.getTime();
        long fad = 24 * 60 * 60 * 1000;
        long msDay = (int)(sad/fad);
        if (msDay % 2 != 0)
        return true;
        else
        return false;
    }
}


Ребята не знаю что тут не так, помогите решить