Advertisement
LEGEND2004

HW #8

Aug 22nd, 2024
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.36 KB | None | 0 0
  1. #pragma GCC optimize("O3")
  2. #include <bits/stdc++.h>
  3. using namespace std;
  4.  
  5. #define int long long
  6. #define double long double
  7. #define _FastIO ios_base::sync_with_stdio(0); cin.tie(0)
  8.  
  9. int dif(string a , string b){
  10.     int cnt = 0;
  11.     for(int i = 0; i < a.size(); i++){
  12.         cnt += a[i] != b[i];
  13.     }
  14.     return cnt;
  15. }
  16.  
  17. int sum(int n){
  18.     int s = 0;
  19.     while(n){
  20.         s += n % 10;
  21.         n /= 10;
  22.     }
  23.     return s;
  24. }
  25.  
  26. signed main()
  27. {
  28.     _FastIO;
  29.     /*
  30.     // A
  31.     int n;
  32.     string s;
  33.     cin >> n >> s;
  34.     int cnt = 0 , ans = 0;
  35.     for(char i : s){
  36.         if(i == 'I')
  37.             cnt++;
  38.         else
  39.             cnt--;
  40.  
  41.         ans = max(ans , cnt);
  42.     }
  43.  
  44.     cout << ans << '\n';
  45.     */
  46.     /*
  47.     // B
  48.     string s;
  49.     cin >> s;
  50.     int n = s.size() , a , z;
  51.     for(int i = 0; i < n; i++){
  52.         if(s[i] == 'A'){
  53.             a = i;
  54.             break;
  55.         }
  56.     }
  57.     for(int i = n - 1; i >= 0; i--){
  58.         if(s[i] == 'Z'){
  59.             z = i;
  60.             break;
  61.         }
  62.     }
  63.     cout << z - a + 1 << '\n';
  64.     //cout << s.rfind("Z") - s.find("A") + 1 << '\n';
  65.     */
  66.     /*
  67.     // D
  68.     int n;
  69.     cin >> n;
  70.     for(int i = 1; i <= 15; i++){
  71.         int x = powl(i , i);
  72.  
  73.         if(x == n){
  74.             cout << i << '\n';
  75.             return 0;
  76.         }
  77.         //cout << x << '\n';
  78.     }
  79.     cout << -1 << '\n';
  80.     */
  81.     /*
  82.     // E
  83.     string s;
  84.     cin >> s;
  85.     int n = s.size();
  86.     int ans = LLONG_MAX;
  87.     for(int i = 0; i + 2 < n; i++){
  88.         int x = stoll(s.substr(i , 3));
  89.         ans = min(ans , abs(x - 753));
  90.     }
  91.     cout << ans << '\n';
  92.     */
  93.     /*
  94.     // F
  95.     int n , m , k , x;
  96.     cin >> n >> m;
  97.     map<int , int> cnt;
  98.     for(int i = 0; i < n; i++){
  99.         cin >> k;
  100.         while(k--){
  101.             cin >> x;
  102.             cnt[x]++;
  103.         }
  104.     }
  105.     int ans = 0;
  106.     for(int i = 1; i <= m; i++){
  107.         if(cnt[i] == n)
  108.             ans++;
  109.  
  110.         //ans += cnt[i] == n;
  111.     }
  112.  
  113.     //for(auto i : cnt){
  114.     //    if(i.second == n)
  115.     //        ans++;
  116.     //}
  117.  
  118.     cout << ans << '\n';
  119.     */
  120.  
  121.     /*
  122.     18 7 8 12
  123.  
  124.  
  125.     */
  126.     /*
  127.     // G
  128.     int n , s , m , l;
  129.     cin >> n >> s >> m >> l;
  130.     int ans = LLONG_MAX;
  131.     for(int i = 0; i <= 20; i++){ // 6
  132.         for(int j = 0; j <= 20; j++){ // 8
  133.             for(int k = 0; k <= 20; k++){ // 12
  134.                 int money = i * s + j * m + k * l;
  135.                 int eggs = i * 6 + j * 8 + k * 12;
  136.                 if(eggs >= n)
  137.                     ans = min(ans , money);
  138.             }
  139.         }
  140.     }
  141.     cout << ans << '\n';
  142.     */
  143.     /*
  144.     // H
  145.     int n;
  146.     cin >> n;
  147.     int L[n + 1];
  148.     L[0] = 2;
  149.     L[1] = 1;
  150.     for(int i = 2; i <= n; i++){
  151.         L[i] = L[i - 1] + L[i - 2];
  152.     }
  153.     cout << L[n] << '\n';
  154.     */
  155.     /*
  156.     // I
  157.     int n , m;
  158.     cin >> n >> m;
  159.     char a[n + 5][m + 5];
  160.     for(int i = 1; i <= n; i++){
  161.         for(int j = 1; j <= m; j++){
  162.             cin >> a[i][j];
  163.         }
  164.     }
  165.  
  166.     for(int i = 0; i <= n + 1; i++){
  167.         for(int j = 0; j <= m + 1; j++){
  168.             if(!i || !j || i == n + 1 || j == m + 1)
  169.                 cout << "#";
  170.             else
  171.                 cout << a[i][j];
  172.         }
  173.         cout << '\n';
  174.     }
  175.     */
  176.     /*
  177.     // J
  178.     string a , b;
  179.     cin >> a >> b;
  180.     int n = a.size() , m = b.size();
  181.     int ans = m;
  182.     for(int i = 0; i + m - 1 < n; i++){
  183.         ans = min(ans , dif(a.substr(i , m) , b));
  184.     }
  185.     cout << ans << '\n';
  186.     */
  187.     /*
  188.     // K
  189.     int n , a , b;
  190.     cin >> n >> a >> b;
  191.     int ans = 0;
  192.     for(int i = 1; i <= n; i++){
  193.         // a <= x <= b
  194.         int x = sum(i);
  195.         if(a <= x && x <= b)
  196.             ans += i;
  197.     }
  198.     cout << ans << '\n';
  199.     */
  200.     /*
  201.     // L
  202.     int n , d;
  203.     cin >> n >> d;
  204.     int x[n + 5][d + 5];
  205.     for(int i = 0; i < n; i++){
  206.         for(int k = 0; k < d; k++){
  207.             cin >> x[i][k];
  208.         }
  209.     }
  210.     // i < j
  211.     int ans = 0;
  212.     for(int i = 0; i < n; i++){
  213.         for(int j = i + 1; j < n; j++){
  214.             int sum = 0;
  215.             for(int k = 0; k < d; k++){
  216.                 sum += (x[i][k] - x[j][k]) * (x[i][k] - x[j][k]);
  217.             }
  218.             int sq = sqrtl(sum);
  219.             if(sq * sq == sum)
  220.                 ans++;
  221.         }
  222.     }
  223.     cout << ans << '\n';
  224.     */
  225. }
  226.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement