D.cpp 600 B

12345678910111213141516171819202122232425262728293031
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. bool prime(int n){
  4. if(n <= 1)return false;
  5. if(n == 2)return true;
  6. if(n % 2 == 0)return false;
  7. for(int i = 3; i * i <= n; i+= 2){
  8. if( n % i == 0){
  9. return false;
  10. }
  11. }
  12. return true;
  13. }
  14. int main(){
  15. int n;
  16. cin >> n;
  17. if(n % 2 == 0){
  18. n -= 2;
  19. cout << 2;
  20. }else{
  21. n -= 3;
  22. cout << 3;
  23. }
  24. for(int i = 2; 2 * i <= n; i++){
  25. if(prime(i) and prime(n - i)){
  26. cout << ' ' << i << ' ' << n - i << endl;
  27. break;
  28. }
  29. }
  30. return 0;
  31. }