Loading...
nelkov avatar nelkov 19 Точки

Ето ти моето решение: https://pastebin.com/HfNsVffj

Дано ти помогне :)

1
vilin avatar vilin 5 Точки

Благодаря за решението! Лесна задача, но явно не съм я разбрал. Вече ми е ясна. 

0
ivelinachavdarova avatar ivelinachavdarova 0 Точки

nelkov, благодаря за решението.
Възможно ли е да обясниш целта на "if (n2 <= n1 || n3 <= n2 || n4 <= n3 || n5 <= n4) continue;"

   

0
nelkov avatar nelkov 19 Точки

Ами идеята е че комбинации не отговарящи на това условие да се пропускат от вложените цикли. Това става с continue. Дано съм бил полезен

0
hrimar avatar hrimar 6 Точки

Ето и моето решение: https://pastebin.com/ck8bshsW.

Но явно в условието има едно равно повече. Това е условието: a ≤ n1 < n2 < n3 < n4 n5 ≤ b.

Моето решение е 100/100 вярно, но при условие: a ≤ n1 < n2 < n3 < n4 < n5 ≤ b.

 

Като се замисля, щом nelkov го е решил при даденото условието, може пък и аз да не съм прав да нагаждам условието според кода си blush

1
26/05/2017 12:20:06
vilin avatar vilin 5 Точки

Благодаря за решението! Лесна задача, но явно не съм я разбрал. Вече ми е ясна. 

0
maxalo avatar maxalo 3 Точки

И аз мисля, че условието не е коректно. Ако е валидно: a ≤ n1 < n2 < n3 < n4  n5 ≤ b, в example- а трябва да има поне един резултат с n4=n5, а такъв няма. Ето и моето решение.

0
16/05/2018 20:51:03
Ordnata avatar Ordnata 7 Точки

Ето и семпъл вариант :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _11._5_Different_Numbers
{
    class Different_Numbers
    {
        static void Main(string[] args)
        {

            int a = int.Parse(Console.ReadLine());
            int b = int.Parse(Console.ReadLine());
            int c = 0;

            for (int n1 = a; n1 <= b; n1++)
            {
                for (int n2 = a; n2 <= b; n2++)
                {
                    for (int n3 = a; n3 <= b; n3++)
                    {
                        for (int n4 = a; n4 <= b; n4++)
                        {
                            for (int n5 = a; n5 <= b; n5++)
                            {

                                if (a <= n1 && n1 < n2 && n2 < n3 && n3 < n4 && n4 < n5 && n5 <= b)
                                {
                                    Console.WriteLine($"{n1} {n2} {n3} {n4} {n5}");
                                    c++;
                                }

                            }
                        }
                    }
                }

            }

            if (c == 0)
            {
                Console.WriteLine("No");
            }
        }
    }
}

 

 

1
Rumyanarusimova avatar Rumyanarusimova 20 Точки

Явно има грешка на втория изход - не ми съвпадаха няколко цифри, но имам 100т.https://pastebin.com/REj1ejSw

0
julia.petkova avatar julia.petkova 10 Точки

Извинявайте!frown

Наистина съм объркала темата. Ще скрия отговора си.

Но пък имам решение по тази задача: https://pastebin.com/p1n6HMTB. yes

0
s.todorova avatar s.todorova 4 Точки

Ето и едно решение от мен: https://pastebin.com/ucQsLAYR

0
Pazzo avatar Pazzo 158 Точки

Ето решение на задачата, минава си 100/100

0
kratun avatar kratun 22 Точки

Това е моето решение. Вески цикъл трябва да ми дава числата, които отговарят на: "n1 < n2 < n3 < n4n5". По този начин си спестявам време и проверки. За да направя това в цикъл "n2" увеличавам +1 числото от предходния и така до цикъл "n5". За край на всеки цикъл използвам същият подход, само че в цикъл "n1" започвам с edns-4 и прибавям +1 във всеки следващ цикъл, докато достигна в цикъл "n5", където остава само ends. Надявам се да ви е било полезно.

using System;


namespace DifferentNumbers
{
    class DifferentNumber
    {
        static void Main()
        {
            int numM = int.Parse(Console.ReadLine());
            int numG = int.Parse(Console.ReadLine());
            int start = numM;
            int ends = numG;
            if (numM > numG)
            {
                start = numG;
                ends = numM;
            }
            if(ends-start>=4)
            {
                for (int i = start; i <= ends - 4; i++)//n1
                {
                    for (int k = i+1; k <= ends - 3; k++)//n2
                    {
                        for (int m = k + 1; m <= ends - 2; m++)//n3
                        {
                            for (int n = m + 1; n <= ends - 1; n++)//n4
                            {
                                for (int b = n + 1; b <= ends; b++)//n5
                                {
                                    Console.WriteLine("{0} {1} {2} {3} {4}",i,k,m,n,b);
                                }
                            }
                        }

                    }
                }
            }
            else
            {
                Console.WriteLine("No");
            }
        }
    }
}
 

0
1
IrinaStoicheva avatar IrinaStoicheva 4 Точки

Не откривам грешката. Judje  дава 83%

https://pastebin.com/sK5Hb4ze

0
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки
  1.             if (a + 4 <= b && a >= -100 && a <= 100 && b >= -100 && b <= 100)

не можах да видя условието заключено е в judge или просто прави проблем в момента. Но от коментарите и решенията на колегите тази ти проверка не прави никакъв смисъл явно искат разликата между а и б да е поне 5 и това е достатъчно а ти излишно си усложнила явно проверката и рповеряваш различни и излишни неща.Но проблема е в този ред с тоя if хващаш граничен тест и го чупиш. 

0
IrinaStoicheva avatar IrinaStoicheva 4 Точки

Problem 11. 5 Different Numbers
You will be given two numbers – a and b. Generate five numbers - n 1 , n 2 , n 3 , n 4, n 5 , for which the following conditions
are true: a ≤ n 1 &lt; n 2 &lt; n 3 &lt; n 4 &lt; n 5 ≤ b. If there is no number in the given interval, which satisfies the conditions –
print “No”.
Input
The input contains two integers, each on a new line.
Output
Print all numbers in increasing order and on a new line.
Constraints
 a and b will be integers in the interval [-100…100]

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