Zadatak Aritmeticki Kvadrat

Pitanje ili opis problema

Ne mogu nikako da resim ovaj zadatak. Mislim da mi je formula tacna, jel radi za vecinu resenja, ali kada dodjem do nekih, verovatno granicnih ili velikih brojeva, grader mi vrati “WA” kao odgovor (za poslednja tri primera).
Bilo bi lepo da odobrite skidanje svih test primera kako bi mogli sami da resimo problem i kako ne bi dolazilo do ovakvih postova.

Link ka zadatku ili odgovarajućoj stranici

https://petlja.org/biblioteka/r/Zbirka2/aritmeticki_kvadrat

Evo da kod:

#include <bits/stdc++.h>

#define granica 1000000000

using namespace std;

long double n,k;
long double kolona,red;


int main(){

    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

    cin>>n>>k;

    kolona=n*n*k+(n*n-n)/2;

    red=n*k+(n*n*n-n*n)/2;

    long double kol=fmod(kolona,granica);
    long double re=fmod(red,granica);

    if(kolona>granica){
        while(kol<=granica/10){
            cout<<0;
            kol*=10;
        }
        kolona=fmod(kolona,granica);
    }

    cout<<fixed<<setprecision(0)<<kolona<<"\n";



    if(red>granica){
        while(re<=granica/10){
            cout<<0;
            re*=10;
        }
        red=fmod(red,granica);
    }
    cout<<fixed<<setprecision(0)<<red<<"\n";

}

N * N * K moze da bude ogroman broj jer je N<=10^9.