Loading...
DBeneva avatar DBeneva 1 Точки

C++ PIN

Здравейте, не разбирам защо Judge не ми приема кода за задачата PIN (минава само нулевите тестове). Като изпробвам програмата с Visual Studio, всичко изглежда наред.


#include <iostream>
#include <string>
using namespace std;

int main()
{
    int n;
    cin >> n;
    string spaces = string(n, ' ');
    int spacesN1 = 0;
    int spacesN2 = n * 2;
    int spacesN3 = n;
    int spacesN4 = n;

    cout << "/`" << string(2 * n, 'P') << spaces << "/`I" << spaces << "/`N" << string(n * 2 + 1, ' ') << "N" << endl;

    for (int row = 1; row <= n - 1; row++)
    {
        cout << "| P" << string(n * 2 - 2, ' ') << "P" << spaces << "| I" << spaces << "| N" << string(spacesN1, ' ') << "N" << string(spacesN2, ' ') << "N" << endl;
        spacesN1++;
        spacesN2--;
    }

    cout << "| " << string(2 * n, 'P') << spaces << "| I" << spaces << "| N" << string(n - 1, ' ') << "N" << string(n + 1, ' ') << "N" << endl;

    for (int row = 1; row <= n + 1; row++)
    {
        if (row == n + 1)
        {
            cout << "\\_" << string((n + 1) / 3, 'P')
                << string((2 * n - ((n + 1) / 3)) + n, ' ') << "\\_I" << spaces << "\\_N" << string(spacesN3, ' ') << "N" << string(spacesN4, ' ') << "N" << endl;
            spacesN3++;
            spacesN4--;
        }
        else
        {
            cout << "| " << string((n + 1) / 3, 'P') << string((2 * n - ((n + 1) / 3)) + n, ' ') << "| I" << spaces << "| N" << string(spacesN3, ' ') << "N" << string(spacesN4, ' ') << "N" << endl;
            spacesN3++;
            spacesN4--;
        }
    }

    return 0;
}

Тагове:
0
C++ Programming
DBeneva avatar DBeneva 1 Точки

Хмм, ако има проблем в броя на P-тата, не би ли трябвало Judge да ми го покаже? Моят изход е различен от този, който трябва да е. Освен това все някакви точки трябваше да ми даде, тъй като примерите (с n = 2 и n = 5) работят. Благодаря за примерното решение, ще го разгледам по-късно :) 

0
Quake3 avatar Quake3 546 Точки

Примерите с n = 2 и n = 5 са zero tests. Честно казано, и на мен не ми харесва много, че използвайки формула, различна от тази, която judge очаква, но задоволяваща напълно условието на задачата, се оценява с 0 точки...

0
DBeneva avatar DBeneva 1 Точки

Ясно, много благодаря за помощта! :)

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