#include<bits/stdc++.h> usingnamespace std; using i64 = longlong; #define int long long signedmain() { std::ios::sync_with_stdio(false); cin.tie(0); string s; cin >> s; int n = s.size(); vector<int> mx(26, 0); int maxx = 0; for (int i = 0; i < n; i++) { mx[s[i] - 'a']++; maxx = max(maxx, mx[s[i] - 'a']); } for (int i = 0; i < 26; i++) { if (mx[i] == maxx) { char x = i + 'a'; cout << x << '\n'; return0; } } return0; }
//暴力枚举A最多能有多少,然后算B即可 #include<bits/stdc++.h> usingnamespace std; using i64 = longlong; #define int long long constint N = 1e6 + 10; int n; int q[N], a[N], b[N]; signedmain() { ios::sync_with_stdio(false); cin.tie(0); cin >> n; for (int i = 1; i <= n; i++) { cin >> q[i]; } for (int i = 1; i <= n; i++) { cin >> a[i]; } for (int i = 1; i <= n; i++) { cin >> b[i]; } int mx = 1 << 30; for (int i = 1; i <= n; i++) { if (a[i] == 0) continue; else { mx = min(mx, q[i] / a[i]); } } int ans = 0; for (int i = 0; i <= mx; i++) { int res = 1 << 30; for (int j = 1; j <= n; j++) { if (b[j] == 0) continue; res = min(res, (q[j] - a[j] * i) / b[j]); } res += i; ans = max(ans, res); } cout << ans << '\n'; return0; }
#include<iostream> #include<cstring> usingnamespace std; #define int long long constint N = 2e5 + 10; int a[N], route[N]; int n, m; intcalc(int a, int b) { if (a > b) return b + n - a; return b - a; } voidadd(int x, int y, int val) { if (x < y) { route[x] += val; route[y] -= val; } else { route[1] += val; route[x] += val; route[y] -= val; } } signedmain() { cin >> n >> m; for (int i = 1; i <= m; i++) cin >> a[i]; for (int i = 1; i < m; i++) { add(a[i + 1], a[i], calc(a[i], a[i + 1])); add(a[i], a[i + 1], calc(a[i + 1], a[i])); } for (int i = 1; i <= n; i++) route[i] += route[i - 1]; int res = 0x3f3f3f3f3f3f3f3f; for (int i = 1; i <= n; i++) { res = min(res, route[i]); } cout << res << endl; return0; }