Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _CRT_SECURE_NO_WARNINGS
- #include <algorithm>
- #include <deque>
- #include <iostream>
- #include <locale>
- #include <map>
- #include <queue>
- #include <set>
- #include <stack>
- #include <math.h>
- #include <string>
- #include <vector>
- #include <iomanip>
- #include <bitset>
- #define sp << " "
- #define sps << " " <<
- #define ln << "\n"
- #define vi vector<int>
- #define vl vector<long long>
- #define vvl vector<vector<ll>>
- #define pii pair<int, int>
- #define all(a) a.begin(), a.end()
- #define rall(a) a.rbegin(), a.rend()
- #define mp make_pair
- #define optimise cin.sync_with_stdio(false); cout.sync_with_stdio(false); cin.tie(NULL);
- typedef long long ll;
- typedef unsigned long long ull;
- using namespace std;
- template<class T>
- istream& operator>> (istream& is, vector<T>& vec) { for (int i = 0; i < (int)vec.size(); ++i)is >> vec[i]; return is; }
- template<class T>
- ostream& operator<< (ostream& os, vector<T>& vec) { for (int i = 0; i < (int)vec.size(); ++i)os << vec[i] sp; return os; }
- template<class T>
- istream& operator>> (istream& is, pair<T, T>& a) { is >> a.first >> a.second; return is; }
- const double pi = acos(-1.0);
- const ll mod = 1e9 + 7;
- const ll inf = 1e9;
- const int maxlen = (int)2e5;
- const double eps = 1e-10;
- //--------------------------
- //MAIN
- int main() {
- optimise
- #ifdef _DEBUG
- auto input = freopen("INPUT.TXT", "r", stdin);
- auto output = freopen("OUTPUT.TXT", "w", stdout);
- #endif
- ll n; cin >> n;
- if (n == 1)
- return cout << 1, 0;
- set<ll>del;
- ll div = 2;
- while (n != 1) {
- if (div * div > n)
- break;
- if (n % div == 0) {
- del.insert(div);
- n /= div;
- }
- else
- div++;
- }
- if (n != 1)
- del.insert(n);
- if (del.size() > 1)
- cout << 1;
- else cout << *del.begin();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement