#include<stdio.h> main() { int tc,t,i,j; long int a[10000]; long int b[1000]; long int ssum,sum; int dui,hang,lie; long int s; scanf("%d",&tc); b[0]=1;b[1]=2;j=2; for(i=2;i<1000;i++) { b[i]=b[i-1]+j; j++; } while(tc-->0) { sum=0; scanf("%ld",&s); for(i=0;;i++) { a[i]=i+1+(i+1)*i/2; ssum=sum; sum+=a[i]; if(sum>=s&&ssum<s) { dui=i+1; break; } } t=s-ssum; for(i=0;;i++) { if(t>=b[i]&&t<b[i+1]) { hang=i+1; break; } } lie=t-b[i]+1; printf("%d %d %d\n",dui,hang,lie); } return 0; } |
Double click to view unformatted code.