can anyone help me find the bug in my code?
what’s wrong in my logic?
void solve()
{
long long k,sum=0;
int d0,d1,d2,d3,d4,d5,d6,nfg,rem;
cin>>k>>d0>>d1;
d2=(d0+d1)%10;
d3=(2*d2)%10;
d4=(4*d2)%10;
d5=(8*d2)%10;
d6=(6*d2)%10;
nfg=(k-3)/4;
rem=(k-3)%4;
sum=sum+d0+d1+d2;
sum=sum+nfg*(d3+d4+d5+d6);
if(rem==1)
{
sum=sum+d3;
}
else if(rem==2)
{
sum=sum+d3+d4;
}
else if(rem==3)
{
sum=sum+d3+d4+d5;
}
if(k==2)
{
sum=d0+d1;
}
if(k==3)
{
sum=d0+d1+d2;
}
if(sum %3==0)
{
cout<<"YES"<<endl;
}
else
{
cout<<"NO"<<endl;
}
}