Не тот же вывод при сборке Visual Studio и idenone.com - PullRequest
0 голосов
/ 04 апреля 2019

Я делаю это проблемы. Когда я запускаю visual-studio-17, вывод будет 2474 (правильный вывод), но когда я бегу по ideone.com, вывод не совпадает, когда я изменяю свой МАКС (2482,2492, ..), и я подхожу к хакерранк и я получил неправильный ответ в этом тестовом случае Проблемы это: https://www.hackerrank.com/challenges/beautiful-triplets

Входные данные: https://hr -testcases-us-east-1.s3.amazonaws.com / 20732 / input02.txt? AWSAccessKeyId = AKIAJ4WZFDFQTZRGO3QA & Expires = 1554374777 & Подпись = WVWUm7% 2FN% -представление 2% -дополнить процентное соотношение: текст% 2Fplain

Выход: https://hr -testcases-us-east-1.s3.amazonaws.com / 20732 / output02.txt? AWSAccessKeyId = AKIAJ4WZFDFQTZRGO3QA & Истекает = 1554375487 & Подпись = HQS% 2Fty2jXLomcsaAgPHwI61ZLk8% 3D & отклика Content-Type = текст% 2Fplain Вот мой код:

#include <iostream>
#include <algorithm>
#include <vector>
#include <cstring>
#define MAX 30000
using namespace std;
long long d[MAX],dd[MAX];
int main()
{
    freopen("beautifultriplets.inp", "r", stdin);
    freopen("beautifultriplets.out", "w", stdout);
    long long n, k,x;
    for(long long i = 0; i < MAX; i++)
        dd[i] = 1;
    vector<int>a;
    cin >> n >> k;
    for (long long i = 0; i < n; i++)
    {
        cin >> x;
        a.push_back(x);
        d[x]++;
    }
    for (long long i = 1; i < n; i++)
    {
        if (d[a[i] - k] > 0)
        {
            dd[a[i]]=dd[a[i] - k]+1;
        }
    }
    long long ans = 0;
    for (long long i = 0; i < n; i++)
    {
        //cout << dd[a[i]] << " ";
        if (dd[a[i]] >= 3)
            ans += d[a[i]] * d[a[i] - k] * d[a[i] - k - k];
    }
    cout << ans;
    return 0;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...