Loading...
Bullsized avatar Bullsized 153 Точки

виждам, че тук е най-разгорещена дискусията (ето тема с още 4 линка към тази задача: https://softuni.bg/forum/questions/details/15060 )
 

ето и моя примерен код: https://pastebin.com/ta1zkLUn

70/100 в системата. Обяснявам: за мен е безсмислено да се ползва while цикъл за тази задача, за това си ползвам for, като просто вадя 1 от i когато има въведено spin. Другото - ползвам булеви команди за това дали въртенето е съответно надясно или наляво, като се променя при всеки spin. Сравнявам си предната дума с новата въведена и ако са същите анулирам резултатния стринг и прескачам това въртене на цикъла. При всичко изпълнено от условията добавям съответно нова дума към стария стринг или стария стринг към новата дума (редове от 45 до 52). Откровено казано вече не знам какво повече иска задачата, а имам 3 или по-малко грешки според джъджа. Гледах и лекцията от съотвеното упражнение, но там не е решена. Ще съм много благодарен ако някой удари едно рамо по кода. Виждал съм решение, което прави 100/100 със while и switch, което не мисля, че се различава от моето, какво бъркам?

 

0
spzvtbg avatar spzvtbg 581 Точки

https://pastebin.com/78fzeKE9 ето гоооооо - е бутнах го малко  ама 100/100

преместих проверката за спин отпред  за да не се трие ако е въведен 2 поредни пъти и му пастнах проверката и в тази за еднаквите входове защото дори тогава си мени посоката

и понеже има елсе закоментирах дясната посока

като закуча така обикновенно трия всичко, препрочитам условието и си правя нова структура 

0
Bullsized avatar Bullsized 153 Точки

не се бях замислял направо да махна едната булева, хитро попадение. наистина изкарва 100 от 100, мерси за удареното рамо!

стратегията с триенето и на мен ми е влизала в употреба не еднократно, особено като се оказва, че от написаното условие съм разбрал и разписал около 16% от задачата.

0
spzvtbg avatar spzvtbg 581 Точки

моля,

нали за това сме тука!

0
GeorgiKostadinov933 avatar GeorgiKostadinov933 7 Точки

Hi

I have also problems with that exercise and cannot understand whats wrong. I tried to use your solution in order to find my error but I become confused after I test 1 specific input on your code.

Using your code, If I input :

4

spin

spin

go

ko

ji

hh

I get output:

hhjikogo

my code outputs: the otherway around. : gokojihh

mycode gets 70% in judge (4,5,9 are errors)

your code is 100%

My understandig is that if no matter how many times spin is entered the direction of writing is changed every time if spin is entered so why the direction is not changed in your code and why judge says is correct? Im just confused where do I make mistake with the logic of direction..

 

Thanks in advance!

 

0
GeorgiKostadinov933 avatar GeorgiKostadinov933 7 Точки
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Intro_and_Basic_Syntax
{
    class Program
    {
        static void Main(string[] args)
        {

            int n = int.Parse(Console.ReadLine());

            string t = string.Empty;
            string spin = "spin";
            int direction = 0;
            string text = string.Empty;
            string lastString = string.Empty;
            bool sameString = false;
            int spinCount = 0;
            

            for (int i = 0; i < n; i++)
            {
                            
                t = Console.ReadLine();

                if (t == spin)
                {
                    spinCount++;
                    n++;
                }
                if (t != spin && t != lastString)
                {
                    if (spinCount % 2 == 0)
                    {
                        text = text + t;
                    }
                    else
                    {
                        text = t + text;
                    }
                }
                else if (t == spin && t != lastString)
                {
                    //n++;
                }
                else 
                { 
                    

                    text = string.Empty;
                   // direction = 0;
                    sameString = true;
                }
                lastString = t;
                if (sameString)
                {
                    //lastString = t;
                    lastString = string.Empty;
                    sameString = false;
                    
                }
                else
                {
                    //lastString = t;
                }
            }

            Console.WriteLine(text);
            
        }
    }
}

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Intro_and_Basic_Syntax { class Program { static void Main(string[] args) { int n = int.Parse(Console.ReadLine()); string t = string.Empty; string spin = "spin"; int direction = 0; string text = string.Empty; string lastString = string.Empty; bool sameString = false; int spinCount = 0; for (int i = 0; i

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