Codeforces Round #387 (Div. 2)A. Display Size(水题)

73 阅读1分钟

题目:

A. Display Size

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

A big company decided to launch a new series of rectangular displays, and decided that the display must have exactly n pixels.

Your task is to determine the size of the rectangular display — the number of lines (rows) of pixels a and the number of columns of pixels b, so that:

  • there are exactly n pixels on the display;
  • the number of rows does not exceed the number of columns, it means a ≤ b;
  • the difference b - a is as small as possible.

Input

The first line contains the positive integer n (1 ≤ n ≤ 106) — the number of pixels display should have.

Output

Print two integers — the number of rows and columns on the display.

Examples

input

8

output

2 4

input

64

output

8 8

input

5

output

1 5

input

999999

output

999 1001

Note

In the first example the minimum possible difference equals 2, so on the display should be 2 rows of 4 pixels.

In the second example the minimum possible difference equals 0, so on the display should be 8 rows of 8 pixels.

In the third example the minimum possible difference equals 4, so on the display should be 1 row of 5 pixels.

代码:

#include <stdio.h>
#include <string.h>
#include <stack>
#include <cmath>
#include <queue>
#include <algorithm>
#define mem(a,b) memset(a,b,sizeof(a))
using namespace std;
int main()
{
    int n;
    while(~scanf("%d",&n))
    {
        for(int i=sqrt(n); i<=n; i++)
        {
            if(n%i==0)
            {
                int a=i,b=n/i;
                printf("%d %d\n",a>b?b:a,a<b?b:a);
                break;
            }
        }
    }
    return 0;
}

开个根号遍历就行喽~
\