intrd(){ int tot = 0; int n; while (tot < 4) { char ch = getchar(); if (ch == '/') tot++; } scanf("%d", &n); return n; }
intmain(){ int t = 1; scanf("%d", &t); while (t--) { int tot = 0; scanf("%d %d", &n, &k); for (int i = 1; i <= n; ++i) { a[i] = rd(); } sort(a + 1, a + 1 + n); for (int i = 1; i <= k; ++i) { printf("%d%c", a[i], " \n"[i == k]); } } return0; }
usingnamespacestd; #define ll long long constint maxn = 1e6 + 7;
ll n, m;
intmain(){ int t = 1; scanf("%d", &t); while (t--) { scanf("%lld %lld", &n, &m); ll a = (ll)sqrt(n); ll b = (ll)sqrt(m); ll c = a * b; printf("%lld\n", c); } return0; }
vector<int> G[maxn]; boolcmp(int a, int b){ return A[a] * B[b] > A[b] * B[a]; }
voidDFS(int u, int fa){ A[u] = a[u], B[u] = b[u], dp[u] = 0; ll sum = 0; for (int v : G[u]) { if (v == fa) continue; DFS(v, u); A[u] += A[v], B[u] += B[v]; dp[u] += dp[v]; sum += B[v]; } dp[u] += a[u] * sum; sort(G[u].begin(), G[u].end(), cmp); for (int v : G[u]) { if (v == fa) continue; sum -= B[v]; dp[u] += A[v] * sum; } }
voidrun(){ scanf("%d", &n); for (int i = 1; i <= n; ++i) G[i].clear(); for (int i = 1; i <= n; ++i) scanf("%lld", b + i); for (int i = 1; i <= n; ++i) scanf("%lld", a + i); for (int i = 1; i < n; ++i) { int u, v; scanf("%d%d", &u, &v); G[u].push_back(v); G[v].push_back(u); } DFS(1, 0); printf("%lld\n", dp[1]); }
intmain(){ int _; scanf("%d", &_); while (_--) run(); return0; }
intmain(){ ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin >> n >> m >> q; for (int i = 1; i <= n; ++i) { cin >> x[i]; } while (q--) { ll p, k; cin >> p >> k; ll tem = (p * x[k]) % (m * 2); if (tem > m) tem = 2 * m - tem; cout << tem << "\n"; } return0; }
int n, q, ans; int a[N], b[N], cor[N], pos[N], res[N]; int num[N];
inlineintrd(){ int s = 0, w = 1; char ch = getchar(); for (; !isdigit(ch); ch = getchar()) { if (ch == '-') w = -1; } for (; isdigit(ch); ch = getchar()) { s = (s << 1) + (s << 3) + ch - '0'; } return s * w; }
structNode{ int l, r, id; }node[N];
boolcmp(Node a, Node b){ if (pos[a.l] == pos[b.l]) { if (pos[a.l] & 1) return a.r < b.r; elsereturn a.r > b.r; } else { return pos[a.l] < pos[b.l]; } }
voidins(int j){ if (num[cor[j]]) ans ^= a[j]; num[cor[j]]++; }
voiddel(int j){ if (num[cor[j]] != 1) ans ^= a[j]; num[cor[j]]--; }
voidsolve(){ int pre = -1, pl = 1, pr = 0; for (int i = 1; i <= q; ++i) { int l = node[i].l, r = node[i].r, id = node[i].id; while (l > pl) del(pl++); while (l < pl) ins(--pl); while (r > pr) ins(++pr); while (r < pr) del(pr--); res[id] = ans; } for (int i = 1; i <= q; ++i) { printf("%d\n", res[i]); } }
intmain(){ n = rd(); q = rd(); for (int i = 1; i <= n; ++i) { a[i] = rd(); b[i] = a[i]; } sort(b + 1, b + 1 + n); int tot = unique(b + 1, b + 1 + n) - b - 1; for (int i = 1; i <= n; ++i) { cor[i] = lower_bound(b + 1, b + 1 + tot, a[i]) - b; } int len = sqrt(n); for (int i = 1; i <= n; ++i) { pos[i] = (i + len - 1) / len; } for (int i = 1; i <= q; ++i) { node[i].l = rd(); node[i].r = rd(); node[i].id = i; } sort(node + 1, node + 1 + q, cmp); solve(); return0; }