Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdio>
- #include <cmath>
- #include <utility>
- using namespace std;
- typedef pair<int,int> ii;
- ii calc(int n) {
- int dim = (int)ceil(sqrt((double)n));
- int aux = (dim-1)*(dim-1)+dim;
- if(n == aux) {
- return ii(dim,dim);
- } else if(n < aux) {
- if(dim&1) {
- return ii(dim,n-(dim-1)*(dim-1));
- } else {
- return ii(n-(dim-1)*(dim-1),dim);
- }
- } else {
- if(dim&1) {
- return ii(dim*dim-n+1,dim);
- } else {
- return ii(dim,dim*dim-n+1);
- }
- }
- }
- int main () {
- int n;
- while(scanf("%d",&n) && n) {
- ii ret = calc(n);
- printf("%d %d\n",ret.first,ret.second);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement