Advertisement
Galebickosikasa

Untitled

Apr 23rd, 2021 (edited)
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.10 KB | None | 0 0
  1. task 14
  2.  
  3. def kek (a, b):
  4. ans = 0
  5. p = 1
  6. a = str (a)
  7. a = a[::-1]
  8. for i in range (len (a)):
  9. ans += int (a[i]) * p
  10. p *= b
  11. return ans
  12.  
  13. x = 3 * 16 ** kek (46, 8) + 5 * 4 ** kek (40, 16) - 8 ** (kek (47, 8) - 27) - 2 ** (kek (110101, 2) + kek (13, 8)) + 15
  14. l = list ()
  15. while (x > 0):
  16. l.append (x % 16)
  17. x //= 16
  18. mx = 0
  19. for t in l:
  20. mx = max (mx, t)
  21. cnt = 0
  22. # print (*l)
  23. for t in l:
  24. if (t == mx):
  25. cnt += 1
  26. print (cnt)
  27.  
  28. task 5
  29.  
  30. int kek (int n) {
  31. vector <int> a;
  32. while (n) {
  33. a.pb (n % 3);
  34. n /= 3;
  35. }
  36. reverse (all (a));
  37. int last = a.back ();
  38. fr (k, 3) {
  39. vector <int> cnt (3);
  40. for (auto& x: a) ++cnt[x];
  41. int f = 0;
  42. fr (i, 3) {
  43. fr (j, 3) {
  44. if (i == j) continue;
  45. f |= cnt[i] == cnt[j];
  46. }
  47. }
  48. if (f) a.pb (last);
  49. else {
  50. int mn = inf;
  51. for (auto& x: cnt) chkmin (mn, x);
  52. fr (i, 3) {
  53. if (cnt[i] == mn) a.pb (i);
  54. }
  55. }
  56. }
  57. reverse (all (a));
  58. int ans = 0;
  59. int p = 1;
  60. fr (i, sz (a)) {
  61. ans += a[i] * p;
  62. p *= 3;
  63. }
  64. return ans;
  65. }
  66.  
  67. signed main () {
  68. ios_base::sync_with_stdio (false);
  69. cin.tie (nullptr);
  70. fl (i, 71, 10000) {
  71. int x = kek (i);
  72. if (x % 2 == 0 && x % 6) {
  73. dbg (i);
  74. break;
  75. }
  76. }
  77. }
  78.  
  79. task 15
  80.  
  81. int imp (int a, int b) {
  82. if (a == 1 && b == 0) return 0;
  83. return 1;
  84. }
  85.  
  86. int kek (int a, int x) {
  87. int aa = 110 % x != 0;
  88. int bb = a % x != 0;
  89. int c = imp (aa, bb);
  90. int d = 730 % x == 0;
  91. int e = imp (d, c);
  92. int f = a % 35 == 0;
  93. return f && e;
  94. }
  95.  
  96. signed main () {
  97. ios_base::sync_with_stdio (false);
  98. cin.tie (nullptr);
  99. int cnt = 0;
  100. for (int a = 1; a <= 1000; ++a) {
  101. int f = 1;
  102. for (int x = 1; x <= 100000; ++x) {
  103. f &= kek (a, x);
  104. }
  105. cnt += f;
  106. }
  107. cout << cnt << '\n';
  108. }
  109.  
  110. task 16
  111.  
  112. int dp[100000 + 100];
  113.  
  114. int f (int n) {
  115. if (dp[n] != -1) return dp[n];
  116. if (n < 2) return dp[n] = 1;
  117. if (n >= 2 && n % 2 == 0) return dp[n] = f (n / 2) + 1;
  118. if (n >= 2 && n % 2 == 1) return dp[n] = f (n - 3) + 3;
  119. assert (0);
  120. }
  121.  
  122. signed main () {
  123. ios_base::sync_with_stdio (false);
  124. cin.tie (nullptr);
  125. for (auto& x: dp) x = -1;
  126. int cnt = 0;
  127. fl (i, 1, 100000 + 1) cnt += f (i) == 12;
  128. cout << cnt << '\n';
  129. }
  130.  
  131. task 17
  132.  
  133. int kek (int x) {
  134. int f = x % 6 == 0;
  135. while (x) {
  136. f &= x % 5 == 2;
  137. x /= 5;
  138. }
  139. return f;
  140. }
  141.  
  142. signed main () {
  143. ios_base::sync_with_stdio (false);
  144. cin.tie (nullptr);
  145. int cnt = 0, s = 0;
  146. fl (i, 10, 6000 + 1) {
  147. if (kek (i)) ++cnt, s += i;
  148. }
  149. cout << cnt << ' ' << s << '\n';
  150. }
  151.  
  152. task 18
  153.  
  154. int n = 10;
  155.  
  156. int corr (int i, int j) {
  157. return i >= 0 && i < n && j >= 0 && j < n;
  158. }
  159.  
  160. vector <pair <int, int>> d = {{-1, -2}, {-2, -1}, {1, -2}, {2, -1}};
  161.  
  162. int g[10][10], dp[10][10];
  163.  
  164. signed main () {
  165. ios_base::sync_with_stdio (false);
  166. cin.tie (nullptr);
  167. fr (i, n) fr (j, n) cin >> g[i][j];
  168. fr (i, n) fr (j, n) dp[i][j] = inf;
  169. fr (i, n) dp[i][0] = g[i][0];
  170. fr (j, n) {
  171. fr (i, n) {
  172. for (auto& x: d) {
  173. int ii = i + x.fi, jj = j + x.se;
  174. if (corr (ii, jj)) {
  175. chkmin (dp[i][j], dp[ii][jj] + g[i][j]);
  176. }
  177. }
  178. }
  179. }
  180. int mn = inf;
  181. fr (i, n) chkmin (mn, dp[i][n - 1]);
  182. cout << mn << '\n';
  183. }
  184.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement