fork download
  1. // يارب يزبط
  2. #include<bits/stdc++.h>
  3. using namespace std;
  4. #define fast ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
  5. #define endl '\n'
  6. #define all(v) (v).begin(), (v).end()
  7. #define rall(v) (v).rbegin(), (v).rend()
  8. #define rep(i, a, b) for (ll i = (a); i < (b); i++)
  9. #define sz(x) (int)(x).size()
  10. #define forn(i, n) for (int i = 0; i < int(n); i++)
  11. #define testCase long long t; cin >> t; while (t--)
  12. #define MAXX 105
  13. #define INF (1LL << 60)
  14. #define ll long long
  15. #define pp pair <int,int>
  16. typedef vector<int> vi;
  17. typedef vector<long long> vl;
  18. /*bool ff(int l, int r, int d, int u) {
  19.   return (l == r) && (d == u) && (l == d);
  20. }*/
  21. /*
  22. typedef long long ll;
  23. const int N = 1e5 + 5, MOD = 1000000007;
  24.  
  25. vector<int> prime;
  26.  
  27. void calcPrimes() {
  28.   vector<int> p(N, 1);
  29.   for (int i = 2; i < N; i++) {
  30.   if (p[i]) {
  31.   prime.push_back(i);
  32.   for (ll j = 1LL * i * i; j < N; j += i) {
  33.   p[j] = 0;
  34.   }
  35.   }
  36.   }
  37. }
  38.  
  39. int main() {
  40. #ifndef ONLINE_JUDGE
  41.   freopen("in.txt", "r", stdin);
  42. #endif
  43.  
  44.   cin.tie(0);
  45.   ios_base::sync_with_stdio(0);
  46.  
  47.   int x;
  48.   cin >> x;
  49.  
  50.   if (x < 3) {
  51.   cout << "-1";
  52.   } else {
  53.   calcPrimes();
  54.   x = *(--upper_bound(prime.begin(), prime.end(), x));
  55.   cout << "1 " << (x / 2) << " " << (x / 2);
  56.   }
  57.  
  58.   return 0;
  59. }
  60. ***************
  61. int prefix[N];
  62.  
  63. void buildPrefix(const vi &a) {
  64.   prefix[0] = a[0];
  65.   for (int i = 1; i < a.size(); i++)
  66.   prefix[i] = prefix[i-1] + a[i];
  67. }
  68.  
  69.  
  70.  
  71. int gcd(int a, int b) {
  72.   return b == 0 ? a : gcd(b, a % b);
  73. }
  74.  
  75. int lcm(int a, int b) {
  76.   return a / gcd(a, b) * b;
  77. }
  78. int lowerBound(const vi &a, int x) {
  79.   return lower_bound(all(a), x) - a.begin();
  80. }
  81.  
  82. int upperBound(const vi &a, int x) {
  83.   return upper_bound(all(a), x) - a.begin();
  84. }
  85. int fact[N], inv_fact[N];
  86.  
  87. void precompute_factorials() {
  88.   fact[0] = inv_fact[0] = 1;
  89.   for (int i = 1; i < N; i++) {
  90.   fact[i] = fact[i-1] * i % MOD;
  91.   inv_fact[i] = modinv(fact[i]);
  92.   }
  93. }
  94.  
  95. int C(int n, int r) {
  96.   if (r > n) return 0;
  97.   return fact[n] * inv_fact[r] % MOD * inv_fact[n-r] % MOD;
  98. }
  99. int A[N], D[N];
  100.  
  101. void addRange(int l, int r, int val) {
  102.   D[l] += val;
  103.   D[r + 1] -= val;
  104. }
  105.  
  106. void buildFinalArray(int n) {
  107.   A[0] = D[0];
  108.   for (int i = 1; i < n; i++)
  109.   A[i] = A[i - 1] + D[i];
  110. }
  111. double distance(Point a, Point b) {
  112.   return sqrt((a.x - b.x)*(a.x - b.x) + (a.y - b.y)*(a.y - b.y));
  113. }
  114.  
  115. S = "abcabca"
  116. S.substr(1, 3) → "bca"
  117.  
  118. */
  119. bool ff(int q) {
  120. return (q & (q - 1)) == 0;
  121. }
  122. void solve(){
  123. cout << "hello world ";
  124. }
  125. int main()
  126. {
  127. fast;
  128. solve();
  129. }
Success #stdin #stdout 0.01s 5288KB
stdin
Standard input is empty
stdout
hello world