Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- task 14
- def kek (a, b):
- ans = 0
- p = 1
- a = str (a)
- a = a[::-1]
- for i in range (len (a)):
- ans += int (a[i]) * p
- p *= b
- return ans
- x = 3 * 16 ** kek (46, 8) + 5 * 4 ** kek (40, 16) - 8 ** (kek (47, 8) - 27) - 2 ** (kek (110101, 2) + kek (13, 8)) + 15
- l = list ()
- while (x > 0):
- l.append (x % 16)
- x //= 16
- mx = 0
- for t in l:
- mx = max (mx, t)
- cnt = 0
- # print (*l)
- for t in l:
- if (t == mx):
- cnt += 1
- print (cnt)
- task 5
- int kek (int n) {
- vector <int> a;
- while (n) {
- a.pb (n % 3);
- n /= 3;
- }
- reverse (all (a));
- int last = a.back ();
- fr (k, 3) {
- vector <int> cnt (3);
- for (auto& x: a) ++cnt[x];
- int f = 0;
- fr (i, 3) {
- fr (j, 3) {
- if (i == j) continue;
- f |= cnt[i] == cnt[j];
- }
- }
- if (f) a.pb (last);
- else {
- int mn = inf;
- for (auto& x: cnt) chkmin (mn, x);
- fr (i, 3) {
- if (cnt[i] == mn) a.pb (i);
- }
- }
- }
- reverse (all (a));
- int ans = 0;
- int p = 1;
- fr (i, sz (a)) {
- ans += a[i] * p;
- p *= 3;
- }
- return ans;
- }
- signed main () {
- ios_base::sync_with_stdio (false);
- cin.tie (nullptr);
- fl (i, 71, 10000) {
- int x = kek (i);
- if (x % 2 == 0 && x % 6) {
- dbg (i);
- break;
- }
- }
- }
- task 15
- int imp (int a, int b) {
- if (a == 1 && b == 0) return 0;
- return 1;
- }
- int kek (int a, int x) {
- int aa = 110 % x != 0;
- int bb = a % x != 0;
- int c = imp (aa, bb);
- int d = 730 % x == 0;
- int e = imp (d, c);
- int f = a % 35 == 0;
- return f && e;
- }
- signed main () {
- ios_base::sync_with_stdio (false);
- cin.tie (nullptr);
- int cnt = 0;
- for (int a = 1; a <= 1000; ++a) {
- int f = 1;
- for (int x = 1; x <= 100000; ++x) {
- f &= kek (a, x);
- }
- cnt += f;
- }
- cout << cnt << '\n';
- }
- task 16
- int dp[100000 + 100];
- int f (int n) {
- if (dp[n] != -1) return dp[n];
- if (n < 2) return dp[n] = 1;
- if (n >= 2 && n % 2 == 0) return dp[n] = f (n / 2) + 1;
- if (n >= 2 && n % 2 == 1) return dp[n] = f (n - 3) + 3;
- assert (0);
- }
- signed main () {
- ios_base::sync_with_stdio (false);
- cin.tie (nullptr);
- for (auto& x: dp) x = -1;
- int cnt = 0;
- fl (i, 1, 100000 + 1) cnt += f (i) == 12;
- cout << cnt << '\n';
- }
- task 17
- int kek (int x) {
- int f = x % 6 == 0;
- while (x) {
- f &= x % 5 == 2;
- x /= 5;
- }
- return f;
- }
- signed main () {
- ios_base::sync_with_stdio (false);
- cin.tie (nullptr);
- int cnt = 0, s = 0;
- fl (i, 10, 6000 + 1) {
- if (kek (i)) ++cnt, s += i;
- }
- cout << cnt << ' ' << s << '\n';
- }
- task 18
- int n = 10;
- int corr (int i, int j) {
- return i >= 0 && i < n && j >= 0 && j < n;
- }
- vector <pair <int, int>> d = {{-1, -2}, {-2, -1}, {1, -2}, {2, -1}};
- int g[10][10], dp[10][10];
- signed main () {
- ios_base::sync_with_stdio (false);
- cin.tie (nullptr);
- fr (i, n) fr (j, n) cin >> g[i][j];
- fr (i, n) fr (j, n) dp[i][j] = inf;
- fr (i, n) dp[i][0] = g[i][0];
- fr (j, n) {
- fr (i, n) {
- for (auto& x: d) {
- int ii = i + x.fi, jj = j + x.se;
- if (corr (ii, jj)) {
- chkmin (dp[i][j], dp[ii][jj] + g[i][j]);
- }
- }
- }
- }
- int mn = inf;
- fr (i, n) chkmin (mn, dp[i][n - 1]);
- cout << mn << '\n';
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement