View Code of Problem 3698

#include<stdio.h>
int main(){
	long long int t,n,i,j,k;
	scanf("%lld",&t);
	while(t--){
		scanf("%lld",&n);
	long long int s=0,s1=0,s2=0;
		for(i=1;s1<n;i++){
			s+=i;
			s1+=s;
		}
		if(s1==n){
			printf("%lld %lld %lld\n",i-1,i-1,i-1);
		}
		else{
		long long int p=n-(s1-s);
		 for(k=1;k<=i;k++){
		 	for(j=1;j<=k;j++){
		 	s2++;
		 	if(s2==p){
		 	printf("%lld %lld %lld\n",i-1,k,j);
		 	break;
		 }
	}
	if(j<=k)
	break;
	}
	}
	}
}

Double click to view unformatted code.


Back to problem 3698