Advertisement
a53

OraDeMate

a53
May 27th, 2020
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. #include <fstream>
  2. using namespace std;
  3. ifstream fin("orademate.in");
  4. ofstream fout("orademate.out");
  5. int n,tip,x[100];
  6.  
  7. void afis(int n)
  8. {
  9. for(int i=1;i<=n;++i)
  10. fout<<x[i];
  11. fout<<'\n';
  12. }
  13.  
  14. void back1(int k)
  15. {
  16. for(int i=0;i<=9;++i)
  17. {
  18. if((i==0&&k==1&&n>1)||i%2==k%2)
  19. continue;
  20. x[k]=i;
  21. if(k==n)
  22. afis(n);
  23. else
  24. back1(k+1);
  25. }
  26. }
  27.  
  28. void back2(int k)
  29. {
  30. for(int i=x[k-1];i<=9;++i)
  31. {
  32. if(i==k )
  33. continue;
  34. x[k]=i;
  35. if(k==n)
  36. afis(n);
  37. else
  38. back2(k+1);
  39. }
  40. }
  41.  
  42. int main()
  43. {
  44. fin>>tip>>n;
  45. x[0]=1;
  46. if(tip==1)
  47. {
  48. if(n==1)
  49. for(int i=0;i<=9;i+=2)
  50. fout<<i<<'\n';
  51. else
  52. back1(1);
  53. }
  54. else
  55. {
  56. if(n==1)
  57. for(int i=0;i<=9;++i)
  58. if(i==1)
  59. continue;
  60. else
  61. fout<<i<<'\n';
  62. else
  63. back2(1);
  64. }
  65. return 0;
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement