• + 1 comment

    I know I have written stupid code and I am getting timeout for all test cases except 1. My program time compexity is o(n^2) as I have used 2 for loop. Can someone suggest better solution and try to explain why I am getting timeout error?

    int i,j,r,k,t,count;
    /* Enter your code here. Read input from STDIN. Print output to STDOUT */ 
    scanf("%d",&t);
    while(t--){
        scanf("%d%d",&r,&k);
        count=0;
        for(i=0;i<=sqrt(r);i++){
            for(j=1;j<=sqrt(r);j++){
                if(i*i+j*j==r)count++;
            }
        }    
        //printf("%d\n",count*4);    
        (count*4<=k)?printf("possible\n"):printf("impossible\n");        
    }    
    return 0;