#include<bits/stdc++.h> usingnamespacestd; #define MAXN 100000 #define rint register int inlineintrf(){int r;int s=0,c;for(;!isdigit(c=getchar());s=c);for(r=c^48;isdigit(c=getchar());(r*=10)+=c^48);return s^45?r:-r;} int a[MAXN+5], c[MAXN+5], s[MAXN+5], n, m, p = 1, t, d; longlong r, j; intmain() { n = rf(); m = rf(); generate(a+1,a+n+1,rf); generate(c+1,c+n+1,rf); iota(s+1,s+n+1,1); sort(s+1,s+n+1,[](int i, int j){return c[i]^c[j]?c[i]<c[j]:i<j;}); for(; m--; printf("%I64d\n",d?0:r)) for(t = rf(), d = rf(), d -= j = min(d,a[t]), a[t] -= j, r = j*c[t]; d && p <= n; d -= j = min(d,a[s[p]]), a[s[p]] -= j, r += j*c[s[p]], p += !a[s[p]]); return0; }
#include<bits/stdc++.h> usingnamespacestd; #define ll long long #define sqr(x) ((x)*(x)) #define rint register int inlineintrf(){int r;int s=0,c;for(;!isdigit(c=getchar());s=c);for(r=c^48;isdigit(c=getchar());(r*=10)+=c^48);return s^45?r:-r;} int n, a[300005]; ll r; intmain(){n = rf(); generate(a+1,a+n+1,rf); sort(a+1,a+n+1); for(rint i = 1, j = n; i < j; r += sqr(a[i]+a[j]), i++, j--); return !printf("%I64d\n",r);}
#include<bits/stdc++.h> usingnamespacestd; #define MAXN 100000 #define rint register int inlineintrf(){int r;int s=0,c;for(;!isdigit(c=getchar());s=c);for(r=c^48;isdigit(c=getchar());(r*=10)+=c^48);return s^45?r:-r;} vector<int> e[MAXN+5]; int q[MAXN+5], s[MAXN+5], n, m, t; bool b[MAXN+5]; intmain() { n = rf(); m = rf(); for(rint i = 1, u, v; i <= m; u = rf(), v = rf(), e[u].push_back(v), e[v].push_back(u), i++); b[q[t=1]=1] = true; for(rint i = 1; i <= n; i++){s[i] = q[1]; pop_heap(q+1,q+t--+1,greater<int>()); for(auto v:e[s[i]]) if(!b[v]) b[q[++t]=v] = true, push_heap(q+1,q+t+1,greater<int>());} for(rint i = 1; i <= n; printf("%d%c",s[i],"\n "[i<n]), i++); return0; }
#include<bits/stdc++.h> usingnamespacestd; #define MOD 998244353 #define PHI 998244352 #define rint register int inlineintrf(){int r;int s=0,c;for(;!isdigit(c=getchar());s=c);for(r=c^48;isdigit(c=getchar());(r*=10)+=c^48);return s^45?r:-r;} structMat{int c[105][105];}C, I, S, U; int n, N, M, a, d, e; unordered_map<int,int> G; inline Mat &operator *= (Mat &A, Mat &B) { for(rint i = 1; i <= n; memset(C.c[i]+1,0,n<<2), i++); for(rint i = 1, j, k; i <= n; i++) for(k = 1; k <= n; k++) if(A.c[i][k]) for(j = 1; j <= n; C.c[i][j] = (C.c[i][j]+1ll*A.c[i][k]*B.c[k][j])%PHI, j++); return A=C; } inline Mat &operator ^= (Mat &A, int K){for(S = I; K; K&1 ? S*=A,0 : 0, A *= A, K >>= 1); return A=S;} inlineintfxp(int a, int n=MOD-2){int s=1;for(;n;n&1?s=1ll*a*s%MOD:0,a=1ll*a*a%MOD,n>>=1);return s;} inlinevoidEXGCD(int a, int b, int &x, int &y){b ? EXGCD(b,a%b,y,x),y-=a/b*x : x=-~(y=0);} inlineintinv(int a, int P){int _, __; EXGCD(a,P,_,__); return (_%P+P)%P;} inlineintGCD(int a, int b){return b?GCD(b,a%b):a;} inlineintLog(int B) { int u = ceil(sqrt(MOD)+.5), t; for(rint j = 0, s = 1; j <= u; G[1ll*B*s%MOD] = j, s = 3ll*s%MOD, j++); t = fxp(3,u); for(rint i = 1, s = t; i <= u; s = 1ll*t*s%MOD, i++) if(G.count(s)) return (i*u-G[s]+PHI)%PHI; } intmain() { n = rf(); generate(U.c[1]+1,U.c[1]+n+1,rf); N = rf(); M = Log(rf()); for(rint i = 1; i <= n; I.c[i][i] = U.c[i+1][i] = 1, i++); U ^= N-n; a = U.c[1][1]; d = GCD(GCD(a,M),PHI); if(GCD(a/d,PHI/d)>1) returnputs("-1"),0; printf("%d\n",fxp(3,1ll*inv(a/d,PHI/d)*(M/d)%(PHI/d))); }