Submission #1256775

#TimeUsernameProblemLanguageResultExecution timeMemory
1256775mkkkkkkkkSouvenirs (IOI25_souvenirs)C++20
Compilation error
0 ms0 KiB
#include "souvenirs.h"
#include <utility>
#include <vector>
#include <bits/stdc++.h>

using namespace std;

void buy_souvenirs(int N, long long P0)
{
    if(N==2)
    {
        transaction(P0-1);
    }
    else if(N==3)
    {
        pair<vector<int>, long long> par=transaction(P0-1);
        if(par.first.size()==2)
        transaction((P0-1-par.second)/2);
        else
        {
            long long br=P0-1-par.second;
            transaction(P0-1-par.second-1);
            transaction(P0-1-par.second-1);
        }
    }
    else
    {
        long long arr[N]={},cnt[N]={};
        arr[0]=P0;
        long long br=P0;
        for(long long i=1;i<N;i++)
        {
            pair<vector<long long>, long long> par=transaction(br-1);
            if(par.second==1 || par.first.size()==2)
            {
                arr[i]=arr[i-1]-2;
            }
            else
            {
                arr[i]=arr[i-1]-1;
            }
            br=arr[i];
            for(auto it : par.first)
            {
                cnt[it]++;
            }
        }
        for(int i=0;i<N;i++)
        {
            for(int j=cnt[i];j<i;j++)
            {
                transaction(arr[i]);
            }
        }
    }
}

Compilation message (stderr)

souvenirs.cpp: In function 'void buy_souvenirs(int, long long int)':
souvenirs.cpp:33:63: error: conversion from 'pair<vector<int>,[...]>' to non-scalar type 'pair<vector<long long int>,[...]>' requested
   33 |             pair<vector<long long>, long long> par=transaction(br-1);
      |                                                    ~~~~~~~~~~~^~~~~~