Can anyone tell what is wrong with my code, it is showing wrong answer

#include<stdio.h>
int main()
{
int a;
float b=0.00,c=0.50;
scanf("%d%f",&a,&b);
if (a>0&&a%5==0)
{
if (b>a)
{
b=b-a-c;
printf("%0.2f",b);
}
else
{
printf("%0.2f",b);
}

}
else
{
    printf("%0.2f",b);
}

}

Can you please post the problem link??

I can figure out that the problem is ATM.
Here’s the ACfied Code.

#include<stdio.h>
int main()
{
    int a;
    float b=0.00,c=0.50;
    scanf("%d%f",&a,&b);
    if(a%5 == 0 && b >= a+c) {
        printf("%.2f",(b-(c+a)));
    }
    else {
        printf("%.2f",b);
    }
    // if (a>0&&a%5==0)
    // {
    //     if (b>a)
    //     {
    //         b=b-a-c;
    //         printf("%0.2f",b);
    //     }
    //     else
    //     {
    //         printf("%0.2f",b);
    //     }
    // }
    // else
    // {
    //     printf("%0.2f",b);
    // }
}