├── 800 ├── 04.cpp ├── 09.cpp ├── 05.cpp ├── 14.cpp ├── 01.cpp ├── 15.cpp ├── 31.cpp ├── 08.cpp ├── 18.cpp ├── 30.cpp ├── 07.cpp ├── 11.cpp ├── 22.cpp ├── 20.cpp ├── 02.cpp ├── 24.cpp ├── 19.cpp ├── 12.cpp ├── 25.cpp ├── 23.cpp ├── 21.cpp ├── 03.cpp ├── 16.cpp ├── 28.cpp ├── 10.cpp ├── 06.cpp ├── 27.cpp ├── 29.cpp ├── 13.cpp ├── 26.cpp └── 17.cpp ├── 900 ├── 20.cpp ├── 25.cpp ├── 06.cpp ├── 26.cpp ├── 04.cpp ├── 23.cpp ├── 03.cpp ├── 24.cpp ├── 31.cpp ├── 13.cpp ├── 08.cpp ├── 30.cpp ├── 19.cpp ├── 09.cpp ├── 22.cpp ├── 02.cpp ├── 28.cpp ├── 11.cpp ├── 27.cpp ├── 14.cpp ├── 05.cpp ├── 07.cpp ├── 29.cpp ├── 01.cpp ├── 17.cpp ├── 15.cpp ├── 10.cpp ├── 16.cpp ├── 18.cpp ├── 12.cpp └── 21.cpp ├── 1000 ├── 30.cpp ├── 09.cpp ├── 28.cpp ├── 31.cpp ├── 26.cpp ├── 27.cpp ├── 01.cpp ├── 17.cpp ├── 18.cpp ├── 25.cp ├── 16.cpp ├── 29.cpp ├── 15.cpp ├── 22.cpp ├── 23.cpp ├── 13.cpp ├── 14.cpp ├── 05.cpp ├── 10.cpp ├── 08.cpp ├── 20.cpp ├── 02.cpp ├── 24.cpp ├── 03.cpp ├── 11.cpp ├── 12.cpp ├── 06.cpp ├── 21.cpp ├── 04.cpp ├── 19.cpp └── 07.cpp ├── 1100 ├── 01.cpp ├── 10.cpp ├── 07.cpp ├── 02.cpp ├── 22.cpp ├── 09.cpp ├── 04.cpp ├── 06.cpp ├── 08.cpp ├── 03.cpp ├── 13.cpp ├── 11.cpp ├── 12.cpp ├── 24.cpp ├── 28.cpp ├── 26.cpp ├── 05.cpp ├── 18.cpp ├── 20.cpp ├── 31.cpp ├── 14.cpp ├── 29.cpp ├── 27.cpp ├── 21.cpp ├── 30.cpp ├── 23.cpp ├── 15.cpp ├── 16.cpp ├── 25.cpp ├── 17.cpp └── 19.cpp ├── 1200 └── 01.cpp └── README.md /800/04.cpp: -------------------------------------------------------------------------------- 1 | //https://codeforces.com/problemset/problem/1899/A 2 | #include 3 | using namespace std; 4 | int main() { 5 | int tc; 6 | cin>>tc; 7 | while(tc--){ 8 | int n ; cin>>n; 9 | if(n%3==0) cout<<"Second"< 3 | using namespace std; 4 | int main() { 5 | int tc; 6 | cin>>tc; 7 | while(tc--){ 8 | int n,sum=0; 9 | cin>>n; 10 | for(int i=0;i>x; 12 | sum+=x; 13 | } 14 | cout<<(0-sum)< 3 | using namespace std; 4 | 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int n; 10 | cin>>n; 11 | int arr[n]; 12 | for(int i=0;i>arr[i]; 14 | } 15 | if(arr[0]==1) cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | string s; 16 | cin>>s; 17 | s[0] = s.back(); 18 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int m,n,x,y; 16 | cin>>m>>n>>x>>y; 17 | cout<<1<<" "<<1<<" "< 4 | using namespace std; 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int a,b,c; 10 | cin>>a>>b>>c; 11 | if(c%2!=0) a+=c/2+1,b+=c/2; 12 | else a+=c/2,b+=c/2; 13 | if(a>b) cout<<"First"< 3 | using namespace std; 4 | int main(){ 5 | int tc; 6 | cin>>tc; 7 | while(tc--){ 8 | int n , k; 9 | cin>>n>>k; 10 | int arr[n]; 11 | for(int i=0;i>arr[i]; 13 | } 14 | if(k==1 && !is_sorted(arr,arr+n)) cout<<"NO"< 4 | using namespace std; 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int n,odd=0; cin>>n; 10 | for(int i=0;i>x; 12 | if(x%2!=0) odd++; 13 | } 14 | if(odd%2==0) cout<<"Yes"< 4 | using namespace std; 5 | #define ll long long 6 | int main() { 7 | int tc; 8 | cin>>tc; 9 | while(tc--){ 10 | int a,b,n; cin>>n>>a>>b; 11 | if(n==a and n==b) cout<<"Yes"<1) cout<<"Yes"< 3 | using namespace std; 4 | int main(){ 5 | int tc; 6 | cin>>tc; 7 | while(tc--){ 8 | int n , k; 9 | cin>>n>>k; bool flag = false; 10 | for(int i=0;i>x; 13 | if(x==k){flag = true;} 14 | } 15 | if(flag) cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define ull unsigned long long 7 | int solve(){ 8 | } 9 | int main() { 10 | int tc; 11 | cin>>tc; 12 | while(tc--){ 13 | ull n; 14 | cin>>n; 15 | ll i = 1; 16 | for(i;i<=n;i++){ 17 | if(n%i!=0) break; 18 | } 19 | cout << i-1 << endl; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /800/18.cpp: -------------------------------------------------------------------------------- 1 | //Grasshopper on a Line 2 | //https://codeforces.com/contest/1837/problem/A 3 | #include 4 | using namespace std; 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int x,k; 10 | cin>>x>>k; 11 | if(x%k){ 12 | cout<<1< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | #define yes "YES" 10 | #define no "NO" 11 | int solve(){ 12 | } 13 | int main() { 14 | int tc; 15 | cin>>tc; 16 | while(tc--){ 17 | ll n ; cin>>n; 18 | if((n&(n-1))==0) cout< 4 | using namespace std; 5 | #define ll long long 6 | int main() { 7 | int tc; 8 | cin>>tc; 9 | while(tc--){ 10 | int n; cin>>n; 11 | int digits = 0, ld; 12 | while(n>0){ 13 | ld = n%10; 14 | n/=10; 15 | digits++; 16 | } 17 | cout<<(ld+(digits-1)*9); 18 | cout< 4 | using namespace std; 5 | #define ll long long 6 | int solve(){ 7 | } 8 | int main() { 9 | int tc; 10 | cin>>tc; 11 | while(tc--){ 12 | unsigned ll a,b,n; 13 | cin>>a>>b>>n; 14 | unsigned ll count = 0,sum = 0; 15 | for(int i =0;i>x; 17 | if(x>=a) count++; 18 | else sum+=x; 19 | } 20 | cout< 3 | using namespace std; 4 | int main() { 5 | int tc; 6 | cin>>tc; 7 | while(tc--){ 8 | int n,m,k; string x,s; 9 | cin>>n>>m; 10 | cin>>x>>s; 11 | for(k = 0;k<6;k++) { 12 | if(x.find(s) != -1){ 13 | cout< 3 | using namespace std; 4 | int main() { 5 | // int tc; 6 | // cin>>tc; 7 | // while(tc--){ 8 | int n; 9 | cin>>n; 10 | int mini = INT_MAX , maxi=INT_MIN+1; 11 | for(int i=0;i>x; 13 | if(x<0) maxi = max(maxi,x); 14 | else mini = min(mini,x); 15 | } 16 | cout< 4 | using namespace std; 5 | #define ll long long 6 | bool solve(ll n,ll k){ 7 | if(n%2==0 or n%k==0) return true; 8 | else if(n%2 and k%2) return true; 9 | else return false; 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | ll n,k; 16 | cin>>n>>k; 17 | cout<<(solve(n,k)?"YES":"NO"); 18 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int n; 16 | cin>>n;int arr[n]; 17 | for(int i=0;i>arr[i]; 18 | int x = arr[0]; 19 | for(auto a : arr) x&=a; 20 | cout< 4 | using namespace std; 5 | #define ll long long 6 | int main() { 7 | int tc; 8 | cin>>tc; 9 | while(tc--){ 10 | ll n,k,x; 11 | cin>>n>>k>>x; 12 | ll sum = 0; 13 | ll mini = (k*(k+1))/2; //first k sum 14 | ll maxi = (k*(2*n+1-k))/2; // last k sum 15 | if(x>=mini and x<=maxi) cout<<"YES"; 16 | else cout<<"NO"; 17 | cout< 4 | using namespace std; 5 | void solve(){ 6 | int n; 7 | cin>>n; 8 | int arr[n]; int maxi = INT_MIN; 9 | for(int i=0;i>arr[i],maxi = max(maxi,arr[i]); 10 | for(int i=0;i>tc; 18 | while(tc--){ 19 | solve(); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /800/02.cpp: -------------------------------------------------------------------------------- 1 | //https://codeforces.com/problemset/problem/1901/A 2 | #include 3 | using namespace std; 4 | 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int n , x; 10 | cin>>n>>x; 11 | int arr[n]; 12 | for(int i=0;i>arr[i]; 13 | int maxdis = arr[0]; int dis = arr[0]; 14 | for(int i=1;i 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n; 17 | cin>>n; 18 | vector arr(n); 19 | for(auto &X : arr) cin>>X; 20 | sort(arr.rbegin(),arr.rend()); 21 | for(auto c: arr) cout< 4 | using namespace std; 5 | #define ll long long 6 | int solve(int n){ 7 | int ans = 0; 8 | for(int i=0;i>x; 10 | ans = ans^x; 11 | } 12 | if(n%2) return ans; 13 | else if(ans==0) return 0; 14 | else return -1; 15 | } 16 | int main() { 17 | int tc; 18 | cin>>tc; 19 | while(tc--){ 20 | int n; cin>>n; 21 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int main() { 10 | int tc; 11 | cin>>tc; 12 | while(tc--){ 13 | set x; 14 | int n; cin>>n; 15 | string s; cin>>s; 16 | ll ans = 0; 17 | for(int i=0;i 4 | using namespace std; 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int n; 10 | cin>>n; 11 | int neg = 0, pos = 0; 12 | for(int i=0;i>x; 14 | if(x==1) pos++; 15 | else neg++; 16 | } 17 | int sum = pos-neg, need = 0; 18 | if(sum<0) need = (abs(sum)+1)/2; 19 | neg-=need; 20 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | ll a,b; 16 | cin>>a>>b; 17 | ll c = abs(a-b); 18 | if(c==0) {cout<<0<<" "<<0< 3 | using namespace std; 4 | int main() { 5 | int tc; 6 | cin>>tc; 7 | while(tc--){ 8 | int n; 9 | cin>>n; int arr[n]; 10 | for(int i=0;i>arr[i]; 11 | vector a; a.push_back(arr[0]); 12 | for(int i=1;i 4 | using namespace std; 5 | #define ll long long 6 | int solve(string s){ 7 | if(s.size()==1) return 1; 8 | int i=0, j=s.size()-1; 9 | while(i<=j){ 10 | if(s[i]==s[j]) return j-i+1; 11 | else i++,j--; 12 | } 13 | return 0; 14 | } 15 | int main() { 16 | int tc; 17 | cin>>tc; 18 | while(tc--){ 19 | int n; cin>>n; 20 | string s; cin>>s; 21 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | ll n;cin>>n; 16 | int cnt = 0,a=0; 17 | while(n%6==0) n/=6,cnt++; 18 | while(n%3==0) n/=3,a++; 19 | if(n==1){ 20 | cout< 4 | using namespace std; 5 | #define ll long long 6 | int solve(int a,int b, int c, int d){ 7 | if(b>d) return -1; 8 | int up = d-b; 9 | int new_a = a+up; 10 | if(new_a>tc; 17 | while(tc--){ 18 | int a,b,c,d; 19 | cin>>a>>b>>c>>d; 20 | cout< 4 | using namespace std; 5 | void solve(){ 6 | int n; 7 | cin>>n; 8 | int arr[n]; int maxi =0; 9 | for(int i=0;i>arr[i];} 10 | int streak = 0; 11 | for(int i=0;i>tc; 20 | while(tc--){ 21 | solve(); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /1000/09.cpp: -------------------------------------------------------------------------------- 1 | //https://codeforces.com/contest/1765/problem/M 2 | //Minimum LCM 3 | #include 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n; 17 | cin>>n; 18 | int a = 1; 19 | for(int i=2;i*i<=n;i++){ 20 | if(n%i==0){ 21 | a = n/i; 22 | break; 23 | } 24 | } 25 | cout< 3 | using namespace std; 4 | 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int n ; string s; 10 | cin>>n>>s; 11 | int count = 0; bool flag = false; 12 | for(int i=0;i0 and i 4 | using namespace std; 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int n,gap = INT_MAX; bool flag = false; 10 | cin>>n; 11 | int prev ; cin>>prev; 12 | for(int i=1;i>x; 14 | if(x 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int n; 16 | cin>>n;int count = 0; 17 | vector arr(n+1,0); 18 | for(int i=1;i<=n;i++){ 19 | cin>>arr[i]; 20 | if(arr[i]>0 and arr[i-1]==0) count++; 21 | } 22 | cout< 4 | using namespace std; 5 | #define ll long long 6 | int main() { 7 | int tc; 8 | cin>>tc; 9 | while(tc--){ 10 | int n; cin>>n; 11 | int arr[n]; 12 | for(int i=0;i>arr[i]; 14 | } 15 | if(arr[0]==arr[n-1]) cout<<"No"; 16 | else{ 17 | cout<<"Yes"< 4 | using namespace std; 5 | #define ll long long 6 | int solve(){ 7 | } 8 | int main() { 9 | int tc; 10 | cin>>tc; 11 | while(tc--){ 12 | int n;string s; 13 | cin>>n>>s; 14 | int cnt=1, maxi = 1; 15 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n; cin>>n; 17 | string s;cin>>s; 18 | stack st; 19 | for(int i=0;i0) st.pop(); 21 | else if(s[i]=='(') st.push(s[i]); 22 | } 23 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | string s; 16 | cin>>s; 17 | int zero=0,one=0; 18 | for(auto x: s){ 19 | if(x=='0') zero++; 20 | else one++; 21 | } 22 | int moves = min(zero,one); 23 | if(moves%2) cout<<"DA"< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | ll x,n; 16 | cin>>x>>n; 17 | ll ans = 0; 18 | if(n%4==0) ans+=0; 19 | else if(n%4==1) ans-=n; 20 | else if(n%4==2) ans+=1; 21 | else ans+=n+1; 22 | if(x%2==0) cout< 5 | using namespace std; 6 | #define ll long long 7 | #define gcd __gcd 8 | #define ull unsigned long long 9 | #define endl "\n" 10 | 11 | int solve(){ 12 | } 13 | int main() { 14 | int n;cin>>n; 15 | string s; 16 | cin>>s; 17 | bool flag = true; 18 | for(int i=0;is[i+1]){ 20 | cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | int solve(){ 8 | } 9 | 10 | int main() { 11 | int tc; 12 | cin>>tc; 13 | while(tc--){ 14 | int n; 15 | cin>>n; int arr[n]; 16 | for(int i=0;i>arr[i]; 18 | } 19 | int x;int ans = 0; 20 | for(int i=0;i 3 | using namespace std; 4 | int main() { 5 | int tc; 6 | cin>>tc; 7 | while(tc--){ 8 | int score = 0; 9 | for(int i=0;i<10;i++){ 10 | for(int j=0;j<10;j++){ 11 | char x; 12 | cin>>x; 13 | if(x=='X'){ 14 | int k = i,l = j; 15 | if(k>=5) k = 10-i-1; 16 | if(l>=5) l = 10-j-1; 17 | score+=min(k+1,l+1); 18 | } 19 | } 20 | } 21 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | ll cost, coal, k; 17 | cin>>cost>>coal>>k; 18 | ll need = (coal*k)+k-1; 19 | ll ans = k; 20 | ll stick = 1; 21 | if(need%(cost-1)==0) ans+=need/(cost-1); 22 | else{ 23 | ans+=(need/(cost-1))+1; 24 | } 25 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | bool solve(ll n){ 11 | ll x = n; 12 | while(n>0){ 13 | int ld = n%10; 14 | if(ld!=0 and x%ld!=0) return false; 15 | n/=10; 16 | } 17 | return true; 18 | } 19 | int main() { 20 | int tc; 21 | cin>>tc; 22 | while(tc--){ 23 | ll n;cin>>n;ll i; 24 | for( i=n;;i++){ 25 | if(solve(i)) break; 26 | } 27 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | ll n;cin>>n; 16 | ll zeroes = 0 ,ones =0; 17 | for(int i=0;i>x; 19 | if(x==0) zeroes++; 20 | else if(x==1) ones++; 21 | } 22 | ll each = pow(2,zeroes); 23 | ll total = ones*(each?each:1); 24 | cout< 4 | using namespace std; 5 | #define ll long long 6 | int main() { 7 | int tc; 8 | cin>>tc; 9 | while(tc--){ 10 | int n,k; 11 | cin>>n>>k; 12 | string s; 13 | cin>>s; 14 | unordered_map mp; 15 | for(auto x: s){ 16 | mp[x]++; 17 | } 18 | int odd = 0; 19 | for(auto x: mp){ 20 | int a = x.second; 21 | if(a%2) odd++; 22 | } 23 | if(odd>k+1) cout<<"NO"; 24 | else cout<<"YES"; 25 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | string s; 17 | cin>>s; 18 | int z=0, o=0; 19 | for(auto x: s){ 20 | if(x=='0')z++; 21 | else o++; 22 | } 23 | int n = s.size(); 24 | for(int i=0;i0)o--,n--; 27 | else break; 28 | } 29 | else{ 30 | if(z>0) z--,n--; 31 | else break; 32 | } 33 | } 34 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int n , k; 16 | cin>>n>>k;int arr[n*k]; 17 | for(int i=0;i>arr[i]; 19 | } 20 | ll sum = 0; 21 | int i=n*k; 22 | int mid = n/2+n%2; 23 | int left = n-mid+1; 24 | while(k--){ 25 | i-=left; 26 | sum+=arr[i]; 27 | } 28 | cout< 4 | #ifndef ONLINE_JUDGE 5 | #include 6 | #else 7 | #define debug(...) 8 | #define debugArr(...) 9 | #endif 10 | using namespace std; 11 | #define ll long long 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | 16 | int solve(){ 17 | } 18 | int main(){ 19 | int t; 20 | cin >> t; 21 | while(t--) { 22 | int n; 23 | cin >> n; 24 | int k = log2(n-1), s= pow(2,k); 25 | for(int i = s-1; i>=0; i--) {cout< 3 | using namespace std; 4 | 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int n; 10 | cin>>n; 11 | int arr[n]; 12 | for(int i=0;i>arr[i]; 13 | unordered_map m; 14 | for(auto x: arr) m[x]++; 15 | if(m.size()>2) cout<<"No"< p; 19 | for(auto x: m) p.push_back(x.second); 20 | if(abs(p[0]-p[1])<=1) cout<<"Yes"< 4 | using namespace std; 5 | #define ll long long 6 | 7 | int solve(int arr[],int n,int twos){ 8 | int x = 0; 9 | for(int i=0;i>tc; 18 | while(tc--){ 19 | int n; cin>>n; 20 | int arr[n]; 21 | int twos =0; 22 | for(int i=0;i>arr[i]; 24 | if(arr[i]==2) twos++; 25 | } 26 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int n; 16 | cin>>n; int arr[n]; 17 | for(int i=0;i>arr[i]; 19 | } 20 | if(arr[0]==1) arr[0]++; 21 | for(int i=1;i 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | ll n , x; 16 | cin>>n>>x; 17 | ll sum = 0;ll mini = 0; 18 | for(int i=0;i>a; 20 | sum+=a; 21 | if(a%x==0) mini+=(a/x); 22 | else mini+=(a/x)+1; 23 | } 24 | if(sum%x==0) cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int main() { 10 | ll tc; 11 | cin>>tc; 12 | while(tc--){ 13 | ll w,h;cin>>w>>h; 14 | ll n,area = 0; 15 | for(int j=0;j<4;j++){ 16 | cin>>n; 17 | ll s,e; 18 | for(int i=0;i>t; 20 | if(i==0) s = t; 21 | else if(i==n-1) e = t; 22 | } 23 | area = max(area, (j<2?h:w)*(e-s)); 24 | } 25 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | ll n,max,min;cin>>n; 16 | if(n%2 or n<4){ 17 | cout<<-1< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | debug(tc); 17 | int n,x; 18 | cin>>n>>x; 19 | vector a(n); 20 | int i=0,j=0,k=0,curr = 0; 21 | for(int i=0;i<3;i++){ 22 | for(auto &e: a) cin>>e; 23 | for(int j=0;j 4 | using namespace std; 5 | #define ll long long 6 | int solve(){ 7 | } 8 | int main() { 9 | int tc; 10 | cin>>tc; 11 | while(tc--){ 12 | int n; cin>>n; 13 | for(int i=0;i>x; 16 | } 17 | if(n%2==0){ 18 | cout<<2< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n; 17 | cin>>n; 18 | vectorx(n); 19 | for(int i=0;i>x[i]; 21 | } 22 | sort(x.rbegin(),x.rend()); 23 | bool f = false; 24 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | int solve(){ 7 | } 8 | int main() { 9 | int tc; 10 | cin>>tc; 11 | while(tc--){ 12 | int n,k; 13 | cin>>n>>k; 14 | int arr[n]; 15 | for(int i=0;i>arr[i]; 17 | } 18 | sort(arr,arr+n); 19 | int streak = 1; int maxstreak = 1; 20 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int n;cin>>n;int arr[n]; 16 | for(int i=0;i>arr[i]; 17 | int idx = -1; 18 | for(int i=1;i+1arr[i+1] and arr[i]>arr[i-1]){ 20 | idx = i; 21 | break; 22 | } 23 | } 24 | if(idx==-1) cout<<"NO"< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n,a,b; cin>>n>>a>>b; 17 | int groups = a/(b+1); 18 | int odd = a%(b+1); 19 | string s; 20 | while(n>0){ 21 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | int main() { 7 | int tc; 8 | cin>>tc; 9 | while(tc--){ 10 | int n; cin>>n; 11 | int arr[n]; 12 | for(int i=0;i>arr[i]; 14 | arr[i]%=2; 15 | } 16 | int op = 0; 17 | int streak = 1; 18 | for(int i=0;i 4 | using namespace std; 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int n; 10 | cin>>n; int arr[n]; 11 | for(int i=0;i>arr[i]; 12 | int mx = INT_MIN, count = 0; 13 | for(auto x: arr){ 14 | if(x>mx) mx = x, count=1; 15 | else if(x==mx) count++; 16 | } 17 | if(count == n) cout<<-1< 4 | using namespace std; 5 | #define ll long long 6 | int main() { 7 | int tc; 8 | cin>>tc; 9 | while(tc--){ 10 | int a,b; 11 | cin>>a>>b; 12 | int xk ,yk ,xq,yq; 13 | cin>>xk>>yk>>xq>>yq; 14 | int ans = 0; 15 | set> s,t; 16 | for(auto x: {a,-a}){ 17 | for(auto y:{b,-b}){ 18 | s.insert({xk+x,yk+y}); 19 | s.insert({xk+y,yk+x}); 20 | t.insert({xq+x,yq+y}); 21 | t.insert({xq+y,yq+x}); 22 | } 23 | } 24 | for(auto x:s){ 25 | if(t.find(x)!=t.end()) ans++; 26 | } 27 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | ll a,b,ans=0; 17 | cin>>a>>b; 18 | if(a==b) ans = 0; 19 | else{ 20 | if(a>b) swap(a,b); 21 | ll c = b/a; 22 | if(b%a!=0 or c%2!=0){ ans = -1;cout<=8 and c%8==0) c/=8,ans++; 24 | while(c>=4 and c%4==0) c/=4,ans++; 25 | while(c>=2 and c%2==0) c/=2,ans++; 26 | if(c!=1) ans = -1; 27 | } 28 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n,k; cin>>n>>k; 17 | string s; 18 | cin>>s; 19 | int b = 0 ,ans = INT_MAX; 20 | int i=0,j=0; 21 | for(j=0;j 4 | using namespace std; 5 | #define ll long long 6 | int solve(int s, int e){ 7 | int count = 0; 8 | while(s>tc; 17 | while(tc--){ 18 | int n;cin>>n;int arr[n]; 19 | unordered_map mp; 20 | for(int i=0;i>arr[i]; 22 | mp[arr[i]]++; 23 | }int maxfreq = 0 ; 24 | for(auto x: mp){ 25 | if(x.second>maxfreq) maxfreq = x.second; 26 | } 27 | int swaps = n-maxfreq; 28 | int copies = solve(maxfreq,n); 29 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(int n , int i){ 11 | int count = 0; 12 | if(i==1) return n+1; 13 | while(n>0){ 14 | n/=i; 15 | count++; 16 | } 17 | return count; 18 | } 19 | int main() { 20 | int tc; 21 | cin>>tc; 22 | while(tc--){ 23 | int a,b;cin>>a>>b; 24 | if(b>a){cout<<1<prev) break; 30 | prev = curr; 31 | } 32 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | ll prime(ll n) {//SIEVE 11 | if(n==2 or n==3) return n; 12 | if (n % 2 == 0) ++n; 13 | while (true) { 14 | bool isPrime = true; 15 | for (ll i=3; i*i<=n; i+=2) { 16 | if (n%i == 0) { 17 | isPrime = false; 18 | break; 19 | } 20 | } 21 | if(isPrime) return n; 22 | n += 2; 23 | } 24 | } 25 | 26 | int main() { 27 | int tc; 28 | cin>>tc; 29 | while(tc--){ 30 | ll d; 31 | cin>>d; 32 | ll x = prime(1+d); 33 | ll y = prime(x+d); 34 | cout< 4 | using namespace std; 5 | #define ll long long 6 | int gcd(int a, int b) { 7 | while (b != 0) { 8 | int temp = b; 9 | b = a % b; 10 | a = temp; 11 | } 12 | return a; 13 | } 14 | bool solve(int arr[],int n){ 15 | for(int i=0;i>tc; 25 | while(tc--){ 26 | int n; cin>>n; 27 | int arr[n]; 28 | for(int i=0;i>arr[i]; 30 | } 31 | if(solve(arr,n)) cout<<"Yes"; 32 | else cout<<"No"; 33 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n,x; 17 | cin>>n>>x; 18 | vector arr(n); 19 | for(int i=0;i>arr[i]; 20 | int s = INT_MIN,e = INT_MAX,ans = 0; 21 | for(int i=0;ie){ 27 | ans++; 28 | s = start; 29 | e = end; 30 | } 31 | } 32 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int n;cin>>n; 16 | int arr[n]; 17 | for(int i=0;i>arr[i]; 19 | } 20 | int count = 0; 21 | for(int i=n-1;i>0;i--){ 22 | if(arr[i]<=arr[i-1]){ 23 | if(arr[i]==0){ 24 | count = -1; 25 | break; 26 | } 27 | while(arr[i-1]>=arr[i]){ 28 | arr[i-1]/=2; count++; 29 | } 30 | } 31 | } 32 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n; cin>>n; 17 | vector arr(n),res(n,-1); 18 | for(auto &x: arr) cin>>x; 19 | int ans = 1; 20 | int i=0,j=1; 21 | while(i &p1,pair&p2){ 6 | int a = p1.first, b = p1.second; 7 | int c = p2.first, d = p2.second; 8 | if(a!=c) return a>c; 9 | else return b>tc; 15 | while(tc--){ 16 | int n,k; 17 | cin>>n>>k; 18 | vector arr(n); 19 | vector > p; 20 | for(int i=0;i>arr[i]; 22 | if(arr[i] 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int main() { 10 | int tc; 11 | cin>>tc; 12 | while(tc--){ 13 | ll n, x; 14 | cin>>n>>x; 15 | vector arr(n); 16 | for(auto &a: arr) cin>>a; 17 | ll lo = 0, hi = 1e10,mid; 18 | ll ans = 0; 19 | while(lo<=hi){ 20 | mid = lo+(hi-lo)/2; 21 | ll w = 0; 22 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | int solve(){ 9 | } 10 | int main() { 11 | int tc; 12 | cin>>tc; 13 | while(tc--){ 14 | int n , q; 15 | cin>>n>>q; 16 | vector arr(n), pre; 17 | pre.push_back(0); 18 | for(int i=0;i>arr[i]; 20 | pre.push_back((pre[i]+arr[i])); 21 | } 22 | while(q--){ 23 | int l,r,k; 24 | cin>>l>>r>>k; 25 | ll left = (ll)pre[l-1]; 26 | ll right = (ll)pre.back()-pre[r]; 27 | ll len = r-l+1; 28 | ll z = (ll)k*len; 29 | ll sum = left+right+z; 30 | cout<<((sum%2)?"YES":"NO"); 31 | cout<<"\n"; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /1000/10.cpp: -------------------------------------------------------------------------------- 1 | //Traffic Light 2 | //https://codeforces.com/problemset/problem/1744/C#include 3 | using namespace std; 4 | #define ll long long 5 | #define gcd __gcd 6 | #define ull unsigned long long 7 | #define endl "\n" 8 | 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int n;char c; 16 | cin>>n>>c; 17 | string s; 18 | cin>>s; 19 | if(c=='g'){ 20 | cout<<0< st; 26 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n; 17 | cin>>n; 18 | string s; 19 | cin>>s; 20 | vector left(n),right(n); 21 | unordered_set uniq; 22 | for(int i=0;i=0;i--){ 28 | uniq.insert(s[i]); 29 | right[i] = uniq.size(); 30 | } 31 | int ans = 0; 32 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | ll mex,x; 17 | cin>>mex>>x; 18 | ll c = 0; 19 | int g = mex%4; 20 | for(int i=mex-1;g>0;i--){ 21 | c^=i; 22 | g--; 23 | } 24 | ll temp = c^x; 25 | ll ans = 0; 26 | if(c==x) ans = mex; 27 | else if((c==0 and mex==x) or temp == mex) { 28 | ans = mex+2; 29 | } 30 | else{ans = mex+1;} 31 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | debug(tc); 17 | int n,k; 18 | cin>>n>>k; 19 | int mini = INT_MAX, op; 20 | int eve = 0; 21 | for(int i=0;i>x; 23 | if(x%2==0) eve++; 24 | if(x%k==0){debug(i);mini = 0;} 25 | int a = x/k; 26 | op = (a+1)*k-x; 27 | mini = min(op,mini); 28 | debug(mini); 29 | } 30 | if(k==4){ 31 | if(eve==1) mini = mini = min(1,mini); 32 | else if(eve>=2) mini = min(0,mini); 33 | mini = min(2,mini); 34 | } 35 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | ll n ; cin>>n; ll k ; cin>>k; 17 | vector q(n),s(n); 18 | for(ll i=0;i>q[i]; 20 | if(i>0) q[i]+=q[i-1]; 21 | } 22 | ll maxi = LLONG_MIN; 23 | for(ll i=0;i>s[i]; 25 | maxi = max(maxi,s[i]); 26 | s[i] = maxi; 27 | } 28 | ll idx = min(k-1,n-1); ll ans = 0; 29 | while(idx>=0){ 30 | ll score = q[idx]; 31 | ll slot = k-1-idx; 32 | ans = max(ans,score+slot*s[idx]); 33 | idx--; 34 | } 35 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | ll n; 32 | cin>>n; 33 | ll ans = (((n*(n+1)%mod)*(4*n-1))%mod*337)%mod; 34 | cout< 4 | #ifndef ONLINE_JUDGE 5 | #include 6 | #else 7 | #define debug(...) 8 | #define debugArr(...) 9 | #endif 10 | using namespace std; 11 | #define ll long long 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | 16 | int solve(){ 17 | } 18 | int main() { 19 | int tc; 20 | cin>>tc; 21 | while(tc--){ 22 | int m,n; cin>>m>>n; 23 | vector arr(m*n); 24 | int count = 0,sum = 0,mini = INT_MAX; 25 | for(int i=0;i>arr[i]; 27 | if(arr[i]<=0) count++; 28 | sum+=abs(arr[i]); 29 | arr[i] = abs(arr[i]); 30 | mini = min(mini,arr[i]); 31 | } 32 | if(count==0 or count%2==0){ 33 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | ll n,p; 17 | cin>>n>>p; 18 | vector a(n),b(n); 19 | vector> v; 20 | for(int i=0;i>a[i]; 21 | for(int i=0;i>b[i]; 23 | v.push_back(make_pair((ll)b[i],(ll)a[i])); 24 | } 25 | sort(v.begin(),v.end()); 26 | ll k = n,i=0,cost = 0; 27 | cost+=p;k--; 28 | while(ip) break; 30 | int left = min(k,v[i].second); 31 | cost+=(left)*v[i].first; 32 | k-=left; 33 | i++; 34 | } 35 | if(k>0) cost+=k*p; 36 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ll unsigned long long 8 | #define endl "\n" 9 | 10 | long long solve(){ 11 | } 12 | int main() { 13 | long long tc; 14 | cin>>tc; 15 | while(tc--){ 16 | ll n,c; cin>>n>>c; 17 | vector arr(n); ll ans; 18 | for(auto &x : arr) cin>>x; 19 | long long l = 1, r = 1e9; 20 | while(l <= r) { 21 | long long mid = l + (r - l) / 2; 22 | long long sum = 0; 23 | for(long long i = 0; i < n; ++i) { 24 | sum += (arr[i] + 2*mid)*(arr[i]+2*mid); 25 | if(sum > c) break; 26 | } 27 | if(sum == c) { 28 | ans = mid; 29 | break; 30 | } 31 | if(sum > c) { 32 | r = mid - 1; 33 | } else { 34 | l = mid + 1; 35 | } 36 | } 37 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int parity(int a, int b){ 11 | if(a%2 and b%2) return false; 12 | if(a%2==0 and b%2==0) return false; 13 | return true; 14 | } 15 | int main() { 16 | int tc; 17 | cin>>tc; 18 | while(tc--){ 19 | int n; 20 | cin>>n; 21 | int maxi = INT_MIN; 22 | vector arr(n); 23 | for(int i=0;i>arr[i]; 24 | maxi = max(arr[0],maxi); 25 | int curr = arr[0]; 26 | for(int i=1;i 4 | #ifndef ONLINE_JUDGE 5 | #include 6 | #else 7 | #define debug(...) 8 | #define debugArr(...) 9 | #endif 10 | using namespace std; 11 | #define ll long long 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | 16 | int solve(){ 17 | } 18 | int main() { 19 | int tc; 20 | //cin>>tc; 21 | //while(tc--){ 22 | int n,d; 23 | cin>>n>>d; 24 | vector arr(n); 25 | for(int i=0;i>arr[i]; 27 | } 28 | sort(arr.begin(),arr.end()); 29 | int i=0,j=n-1; int ans = 0; 30 | while(i<=j){ 31 | ll p = arr[j]; 32 | ll need = d/p; 33 | if(need*p>d); 34 | else need++; 35 | i+=(need-1); 36 | if(i<=j) ans++; 37 | else break; 38 | j--; 39 | } 40 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | vector two(31,1); 16 | for(int i=1;i<=30;i++){ 17 | two[i]=two[i-1]*2; 18 | } 19 | while(tc--){ 20 | ll n,m; cin>>n>>m; 21 | vector a(n),b(m); 22 | for(auto &x: a) cin>>x; 23 | for(auto &x: b) cin>>x; 24 | ll max = INT_MAX; 25 | vector p; 26 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | ll solve(vector> &v, ll s,ll k){ 11 | ll mini = LLONG_MAX/2; ll ans = -1; 12 | for(int i=1;i<=k;i++){ 13 | ll dis = abs(v[i][0]-v[s][0])+abs(v[i][1]-v[s][1]); 14 | if(dis>tc; 24 | while(tc--){ 25 | ll n,k,s,d; 26 | cin>>n>>k>>s>>d; 27 | vector> v(n+1); 28 | for(int i=1;i<=n;i++){ 29 | ll x,y; 30 | cin>>x>>y; 31 | v[i] = {x,y}; 32 | } 33 | ll real = abs(v[s][0]-v[d][0])+abs(v[s][1]-v[d][1]); 34 | ll s_near = solve(v,s,k); 35 | ll d_near = solve(v,d,k); 36 | ll ans = min(real,s_near+d_near); 37 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | string word,res; 16 | cin>>word>>res; 17 | unordered_map mp,req; 18 | for(auto x: res) req[x]++; 19 | bool flag = true; 20 | int i=word.size()-1, j=res.size()-1; 21 | while(j>=0 and i>=0){ 22 | mp[word[i]]++; 23 | if(word[i]==res[j]){ 24 | if(mp[word[i]]>req[word[i]]){ 25 | flag = false; 26 | break; 27 | } 28 | i--,j--; 29 | } 30 | else i--; 31 | } 32 | if(j>=0) flag = false; 33 | for(auto c: res){ 34 | if(mp[c] 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | ll n;cin>>n; 17 | vector ans(n),pre(n); 18 | vector>v(n); 19 | for(int i=0;i>c; 21 | v[i] = {c,i}; 22 | } 23 | sort(v.begin(),v.end()); 24 | pre[0] = v[0].first; 25 | for(int i=1;i=0;i--){ 30 | ll score = pre[i]; 31 | if(score>=v[i+1].first){ 32 | ans[v[i].second] = ans[v[i+1].second]; 33 | } 34 | else{ 35 | ans[v[i].second] = i; 36 | } 37 | } 38 | for(auto x: ans) cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | debug(tc); 17 | ll n,k,b,s; 18 | cin>>n>>k>>b>>s; 19 | ll req = b*k; 20 | if(s1)?(left/(k-1))+(left%(k-1)!=0):0; 26 | if(zeroes>n-1) { 27 | cout<<-1<k-1) { 34 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int a,b,c; 16 | cin>>a>>b>>c; 17 | int d1 = b-a, d2 = c-b; 18 | if(d1==d2) { 19 | cout<<"YES"<=b){ 26 | cout<<"YES"<=c){ 33 | cout<<"YES"<=a){ 40 | cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | #define pp pair 10 | #define ff first 11 | #define ss second 12 | #define mod 1000000007 13 | #define sort(v) sort(v.begin(),v.end()) 14 | vector read(int n){ 15 | vector arr(n); 16 | for(int i=0;i>arr[i]; 17 | return arr; 18 | } 19 | bool pal(vector &v){ 20 | int i=0,j=v.size()-1; 21 | while(i<=j){ 22 | if(v[i]!=v[j]) return false; 23 | i++,j--; 24 | } 25 | return true; 26 | } 27 | int main() { 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | int n; 32 | cin>>n; 33 | vector v = read(n); 34 | int ans = 1; 35 | int i=0,j=n-1,a = abs(v[0]-v.back()); 36 | while(i<=j){ 37 | int x = abs(v[i]-v[j]); 38 | a = gcd(x,a); 39 | i++,j--; 40 | } 41 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | ll n,k; cin>>n>>k; 17 | ll sum = 0; 18 | vector a(n); 19 | for(auto &x: a){ cin>>x;sum+=x;} 20 | sort(a.begin(),a.end()); 21 | vector pre,suff;pre = a,suff = a; 22 | for(int i=1;i=0;i--){ 26 | suff[i] = suff[i+1]+a[i]; 27 | } 28 | ll i=0,j=n-1; ll temp = sum,ans=-1; 29 | for(int m = 0;m<=k;m++){ 30 | int id1 = 2*m-1; 31 | int j = k-m; 32 | int id2 = n-j; 33 | if(id1>=0) temp-=pre[id1]; 34 | if(id2 4 | #ifndef ONLINE_JUDGE 5 | #include 6 | #else 7 | #define debug(...) 8 | #define debugArr(...) 9 | #endif 10 | using namespace std; 11 | #define ll long long 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | vector read(int n){ 20 | vector arr(n); 21 | for(int i=0;i>arr[i]; 22 | return arr; 23 | } 24 | int solve(){ 25 | } 26 | int main() { 27 | int tc; 28 | cin>>tc; 29 | while(tc--){ 30 | int n; 31 | cin>>n; 32 | vector a = read(n); 33 | vector b = read(n); 34 | sort(a.rbegin(),a.rend()); 35 | sort(b.rbegin(),b.rend()); 36 | int i = 0,j=0; 37 | long long ans = 1; 38 | while(i 4 | using namespace std; 5 | int main() { 6 | int tc; 7 | cin>>tc; 8 | while(tc--){ 9 | int n,k,x; 10 | cin>>n>>k>>x; 11 | if(n%2!=0){ 12 | if(x!=1){ 13 | cout<<"YES"<0) cout<<1<<" "; 15 | } 16 | else if(k>2){ 17 | cout<<"YES"<0) cout<<1<<" "; 29 | } 30 | else if(x!=2 and k>=2){ 31 | cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int n; 16 | cin>>n; 17 | int maxi = -1, mini = 9999; 18 | int maxidx, mindx ; int arr[n]; 19 | for(int i=0;i>x; 21 | arr[i] = x; 22 | if(x>maxi){ 23 | maxi = x; 24 | maxidx = i; 25 | } 26 | if(x=1;i--){ 37 | int diff = arr[i-1]-arr[i]; 38 | c = max(c,diff); 39 | } 40 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | int n; 32 | cin>>n; 33 | vi arr(n); 34 | read(arr,n); 35 | vi x = arr; 36 | srt(x); 37 | int ans = INT_MAX; 38 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | int n;cin>>n; 32 | vi arr(n); 33 | read(arr,n); 34 | int i=n-1,op=0; 35 | while(i>=0){ 36 | while(i>=0 and arr[i]==arr[n-1]) i--; 37 | if(i<0) break; 38 | int cnt = n-1-i; 39 | i-=cnt;op++; 40 | } 41 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n,k,t; 17 | cin>>n>>k>>t; 18 | vector arr(n); 19 | for(int i=0;i>arr[i]; 20 | ll ans = 0;ll days = 0; 21 | for(int i=0;i=k){ 26 | ll possible = (days*(days+1))/2; 27 | //(k-1)/2(2n-k+2) 28 | ll x = ((k-1)*(2*days-k+2))/2; 29 | debug(x); 30 | ans+=possible-x; 31 | } 32 | days= 0; 33 | } 34 | } 35 | debug(days); 36 | if(days>=k){ 37 | ll possible = (days*(days+1))/2; 38 | ll x = ((k-1)*(2*days-k+2))/2; 39 | ans+=possible-x; 40 | } 41 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | string a,b; 17 | cin>>a>>b; 18 | if(a==b) {cout<<0< m1,m2; 20 | for(int i=0;imaxi){ 33 | maxi = l; 34 | ans = a.size()-len+b.size()-len; 35 | } 36 | } 37 | m2[x] = i; 38 | } 39 | } 40 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | int n;cin>>n; 32 | vi arr(n); 33 | read(arr,n); 34 | int i=0,j=n-1; 35 | int a = 0, b = 0, ans = 0; 36 | while(i<=j){ 37 | if(a==b){ 38 | ans = n-1-j+i; 39 | a+=arr[i++]; 40 | } 41 | else if(a 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | int solve(){ 11 | } 12 | int main() { 13 | int tc; 14 | cin>>tc; 15 | while(tc--){ 16 | int n; 17 | cin>>n; 18 | int k = n; 19 | vector res;int mini = INT_MAX; 20 | while(n--){ 21 | int m; 22 | cin>>m; 23 | vector temp(m); 24 | int fmin = INT_MAX,smin = INT_MAX; 25 | for(int i=0;i>temp[i]; 27 | if(fmin>temp[i]){ 28 | smin = fmin; 29 | fmin = temp[i]; 30 | } 31 | else if(smin>temp[i]){ 32 | smin = temp[i]; 33 | } 34 | } 35 | mini = min(mini,fmin); 36 | res.push_back(smin); 37 | } 38 | sort(res.begin(),res.end()); 39 | ll sum = 0; 40 | sum+=mini; 41 | int i = res.size()-1; 42 | int cnt = 0; 43 | while(cnt++ 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | 10 | vector div( ll &n){ 11 | vector ans; 12 | for(ll i=1;i<=sqrt(n);i++){ 13 | if(n%i==0){ 14 | ans.push_back(i); 15 | ans.push_back(n/i); 16 | } 17 | } 18 | return ans; 19 | } 20 | int main() { 21 | int tc; 22 | cin>>tc; 23 | while(tc--){ 24 | ll n; cin>>n; 25 | vector v = div(n); 26 | vector arr(n); 27 | for(int i=0;i>arr[i]; 28 | 29 | ll ans = 0; 30 | for(auto c : v){ 31 | ll sum = 0; 32 | ll mini = LLONG_MAX,maxi = LLONG_MIN; 33 | if(c==n) continue; 34 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | ll n;cin>>n; 32 | ll c;cin>>c; 33 | vl v(n); 34 | for(ll i=0;i>v[i]; 36 | v[i]+=(i+1); 37 | } 38 | srt(v); 39 | ll count =0; 40 | for(ll i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define presum(x,y) for(ll i=1;i 10 | #define vl vector 11 | #define vvi vector> 12 | #define vvl vector> 13 | #define gcd __gcd 14 | #define ull unsigned long long 15 | #define endl "\n" 16 | #define pp pair 17 | #define ff first 18 | #define ss second 19 | #define mod 1000000007 20 | #define srt(v) sort(v.begin(),v.end()) 21 | #define rsrt(v) sort(v.rbegin(),v.rend()) 22 | #define rev(v) reverse(v.begin(),v.end()) 23 | #define ump unordered_map 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | int n; 32 | cin>>n; 33 | vi v(n); 34 | ll sum = 0; 35 | for(int i=0;i>v[i]; 37 | sum+=v[i]; 38 | } 39 | ll run = 0, ans = 1; 40 | for(int i=0;i 4 | #ifndef ONLINE_JUDGE 5 | using namespace std; 6 | #define ll long long 7 | #define gcd __gcd 8 | #define ull unsigned long long 9 | #define endl "\n" 10 | #define pp pair 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | int n; 16 | cin>>n; 17 | priority_queue,less<>> pq; 18 | vector visit(n) ; 19 | for(int i=0;i>x; 21 | visit[i] = x; 22 | pq.push({x,i}); 23 | } 24 | ll l=0,r=0;bool right = true; 25 | ll ans = 0; 26 | while(pq.size()){ 27 | auto p = pq.top();pq.pop(); 28 | int v = p.first; 29 | int idx = p.second; 30 | if(right){ 31 | r++; 32 | ans+=(r)*visit[idx]*2; 33 | visit[idx] = r; 34 | right = false; 35 | } 36 | else{ 37 | l--; 38 | ans+=abs(l)*visit[idx]*2; 39 | visit[idx] = l; 40 | right = true; 41 | } 42 | } 43 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | // int tc; 29 | // cin>>tc; 30 | //while(tc--){ 31 | int n,k;cin>>n>>k; 32 | ump idx; 33 | vi arr(n),q(k); 34 | read(arr,n); 35 | read(q,k); 36 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | #define pp pair 10 | #define ff first 11 | #define ss second 12 | #define vi vector 13 | #define mod 1000000007 14 | #define sort(v) sort(v.begin(),v.end()) 15 | vector read(int n){ 16 | vector arr(n); 17 | for(int i=0;i>arr[i]; 18 | return arr; 19 | } 20 | int solve(){ 21 | } 22 | int main() { 23 | int tc; 24 | cin>>tc; 25 | while(tc--){ 26 | int n; 27 | cin>>n; 28 | vi a = read(n); 29 | vi b = read(n); 30 | int i=0,j=0;int l=1, r = n,len = 0; 31 | while(jlen){len = curr,l=i+1,r=j+1;} 40 | } 41 | while(i<=j){ 42 | if(a[i]!=b[i]) count--; 43 | i++; 44 | if(count){ 45 | int curr = j-i+1; 46 | if(curr>len){len = curr,l=i+1,r=j+1;} 47 | } 48 | } 49 | j++; 50 | } 51 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | int solve(){ 10 | } 11 | int main() { 12 | int tc; 13 | cin>>tc; 14 | while(tc--){ 15 | ll n; 16 | cin>>n; 17 | string s = to_string(n); 18 | ll count = 0,ans = INT_MAX; 19 | for(int i=s.size()-1;i>=0;i--){ 20 | if(s[i]=='0'){ 21 | i--; 22 | while(i>=0 and( s[i]!='5' and s[i]!='0')){ 23 | count++; 24 | i--; 25 | } 26 | if(i>=0 and (s[i]=='5' or s[i]=='0')){ 27 | ans = min(ans,count); 28 | } 29 | break; 30 | } 31 | else count++; 32 | } 33 | count = 0; 34 | for(int i=s.size()-1;i>=0;i--){ 35 | if(s[i]=='5'){ 36 | i--; 37 | while(i>=0 and( s[i]!='2' and s[i]!='7')){ 38 | count++; 39 | i--; 40 | } 41 | if(i>=0 and (s[i]=='2' or s[i]=='7')){ 42 | ans = min(ans,count); 43 | } 44 | break; 45 | } 46 | else count++; 47 | } 48 | cout< 4 | #ifndef ONLINE_JUDGE 5 | #include 6 | #else 7 | #define debug(...) 8 | #define debugArr(...) 9 | #endif 10 | using namespace std; 11 | #define ll long long 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | 16 | int solve(){ 17 | } 18 | int main() { 19 | int tc; 20 | cin>>tc; 21 | while(tc--){ 22 | int n; int ans=0; 23 | cin>>n; 24 | vector a(n),b(n); 25 | for(int i=0;i>a[i]; 26 | for(int i=0;i>b[i]; 27 | vector freq1(n+n+1,0),freq2(n+n+1,0); 28 | int s = 0 ,i=1; 29 | for( i=1;i 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | ll n;cin>>n; 32 | vl arr(n); 33 | read(arr,n); 34 | ll i = 0,j=1; 35 | ll x=arr[0],y=arr[1]; 36 | while(i 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | int n,k; 32 | cin>>n>>k; 33 | vi v(n); 34 | read(v,n); 35 | srt(v); 36 | bool f = false; 37 | int left = 0, right = 1; 38 | while (right < n) { 39 | int diff=v[right]- v[left]; 40 | if(diff==k) { 41 | f = true; 42 | break; 43 | } 44 | else if (diff < k) right++; 45 | else{ 46 | left++; 47 | if (left==right) right++; 48 | } 49 | } 50 | 51 | if(f) cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | int n; 32 | cin>>n; 33 | vi v(n); 34 | read(v,n); 35 | int ans = -1; 36 | vi arr; 37 | ump mp; 38 | for(int i=0;i=0;i--){ 43 | for(int j=i;j>=0;j--){ 44 | if(gcd(arr[i],arr[j])==1){ 45 | ans = max(ans,mp[arr[i]]+mp[arr[j]]); 46 | } 47 | } 48 | } 49 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | bool solve(vi &arr, int k){ 25 | vector temp; 26 | for(auto x: arr) if(x!=k) temp.pb(x); 27 | int i=0,j=temp.size()-1; 28 | while(i<=j){ 29 | if(temp[i]!=temp[j]) return false; 30 | i++,j--; 31 | } 32 | return true; 33 | } 34 | int main() { 35 | ios::sync_with_stdio(0); cin.tie(0); 36 | int tc; 37 | cin>>tc; 38 | while(tc--){ 39 | int n;cin>>n; 40 | vi arr(n); 41 | read(arr,n); 42 | int i=0,j=n-1; 43 | bool f = true; 44 | while(i<=j){ 45 | if(arr[i]!=arr[j]){ 46 | f = (solve(arr,arr[i]) or solve(arr,arr[j])); 47 | break; 48 | } 49 | i++;j--; 50 | } 51 | if(f) cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | ll n,l,r; 32 | cin>>n>>l>>r; 33 | vl arr(n+1); 34 | bool flag = true; 35 | for(int i=1;i<=n;i++){ 36 | if(l%i==0) arr[i]=l; 37 | else{ 38 | ll x = l%i; 39 | if((l+i-x)>r) { 40 | flag = false; 41 | break; 42 | } 43 | else if((l+i-x)<=r){ 44 | arr[i] = l+i-x; 45 | } 46 | } 47 | } 48 | if(flag){ 49 | cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define gcd __gcd 7 | #define ull unsigned long long 8 | #define endl "\n" 9 | #define pp pair 10 | #define ff first 11 | #define ss second 12 | #define mod 1000000007 13 | #define sort(v) sort(v.begin(),v.end()) 14 | vector read(int n){ 15 | vector arr(n); 16 | for(int i=0;i>arr[i]; 17 | return arr; 18 | } 19 | int solve(){ 20 | } 21 | int main() { 22 | int tc; 23 | cin>>tc; 24 | while(tc--){ 25 | string s; cin>>s; 26 | ll n = s.size(); 27 | if(s.size()>1) s+=s; 28 | ll count = 0, maxi =0;bool flag = false; 29 | for(int i=0;i 4 | using namespace std; 5 | #define ll long long 6 | #define vi vector 7 | #define vl vector 8 | #define vvi vector> 9 | #define vvl vector> 10 | #define gcd __gcd 11 | #define ull unsigned long long 12 | #define endl "\n" 13 | #define pp pair 14 | #define ff first 15 | #define ss second 16 | #define mod 1000000007 17 | #define srt(v) sort(v.begin(),v.end()) 18 | #define rsrt(v) sort(v.rbegin(),v.rend()) 19 | #define rev(v) reverse(v.begin(),v.end()) 20 | #define ump unordered_map 21 | 22 | vector read(int n){ 23 | vector arr(n); 24 | for(int i=0;i>arr[i]; 25 | return arr; 26 | } 27 | int solve(){ 28 | } 29 | int main() { 30 | ios::sync_with_stdio(0); cin.tie(0); 31 | int tc; 32 | cin>>tc; 33 | while(tc--){ 34 | ll n; 35 | cin>>n; 36 | vl v = read(n); 37 | srt(v); 38 | vl pre; 39 | pre.push_back(v[0]); 40 | for(int i=1;ipre[i-1]) { 50 | flag = false; 51 | break; 52 | } 53 | } 54 | if(flag) cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | string s; 32 | cin>>s; bool flag = true; 33 | ump mp; 34 | for(auto c: s) mp[c]++; 35 | int uniq = mp.size(); 36 | for(int i=0;i<26;i++){ 37 | if(mp['a'+i]<2) continue; 38 | int j=0; 39 | char key = 'a'+i; 40 | int n = s.size(); 41 | while(j1){ 47 | flag = false; 48 | break; 49 | } 50 | 51 | } 52 | if(!flag) break; 53 | } 54 | cout<<((flag)?"YES":"NO")< 4 | using namespace std; 5 | #define yes "YES" 6 | #define no "NO" 7 | #define ll long long 8 | #define read(arr,n) for(ll i=0;i>arr[i] 9 | #define pb(x) push_back(x) 10 | #define vi vector 11 | #define vl vector 12 | #define vvi vector> 13 | #define vvl vector> 14 | #define gcd __gcd 15 | #define ull unsigned long long 16 | #define endl "\n" 17 | #define pp pair 18 | #define ff first 19 | #define ss second 20 | #define mod 1000000007 21 | #define srt(v) sort(v.begin(),v.end()) 22 | #define rsrt(v) sort(v.rbegin(),v.rend()) 23 | #define rev(v) reverse(v.begin(),v.end()) 24 | #define ump unordered_map 25 | #define uset unordered_set 26 | #define setbits(x) __builtin_popcount(x) 27 | 28 | vector solve(vector& arr) { 29 | int n = arr.size(); 30 | int a=-1,b=-1,c=-1; 31 | for (int i = 0; i < n; ++i) { 32 | if (a==-1 or arr[i]>arr[a]) c=b,b=a,a=i; 33 | else if (b==-1 or arr[i]>arr[b]) c=b,b=i; 34 | else if (c==-1 or arr[i]>arr[c]) c = i; 35 | } 36 | return {a,b,c}; 37 | } 38 | int main() { 39 | ios::sync_with_stdio(0); cin.tie(0); 40 | int tc; 41 | cin>>tc; 42 | while(tc--){ 43 | int n;cin>>n; 44 | vvi arr; 45 | for(int i=0;i<3;i++){ 46 | vi temp(n); 47 | read(temp,n); 48 | arr.pb(temp); 49 | } 50 | int ans = 0, curr = 0; 51 | for(auto x : solve(arr[0])){ 52 | for(auto y : solve(arr[1])){ 53 | for(auto z: solve(arr[2])){ 54 | if(x!=y and y!=z and z!=x){ 55 | curr=arr[0][x]+arr[1][y]+arr[2][z]; 56 | ans = max(curr,ans); 57 | } 58 | } 59 | } 60 | } 61 | cout< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | int n,k; 32 | cin>>n>>k; 33 | vvi v; 34 | for(int i=0;i1 and n%2==1){ 52 | int row = n/2; 53 | int i=0,j=n-1; 54 | while(i<=j){ 55 | if(v[row][i]!=v[row][j]) k--; 56 | i++;j--; 57 | } 58 | } 59 | if(k>=0 and k%2==0) cout<<"YES"<=0 and n%2) cout<<"YES"< 4 | using namespace std; 5 | #define ll long long 6 | #define read(arr,n) for(ll i=0;i>arr[i] 7 | #define pb(x) push_back(x) 8 | #define vi vector 9 | #define vl vector 10 | #define vvi vector> 11 | #define vvl vector> 12 | #define gcd __gcd 13 | #define ull unsigned long long 14 | #define endl "\n" 15 | #define pp pair 16 | #define ff first 17 | #define ss second 18 | #define mod 1000000007 19 | #define srt(v) sort(v.begin(),v.end()) 20 | #define rsrt(v) sort(v.rbegin(),v.rend()) 21 | #define rev(v) reverse(v.begin(),v.end()) 22 | #define ump unordered_map 23 | 24 | int solve(){ 25 | } 26 | int main() { 27 | ios::sync_with_stdio(0); cin.tie(0); 28 | int tc; 29 | cin>>tc; 30 | while(tc--){ 31 | ll n; 32 | cin>>n; 33 | vl v(n);ll sum = 0; 34 | int count = 0; 35 | vector neg; 36 | vector pos; 37 | for(int i=0;i>v[i]; 39 | if(v[i]<0) count++,neg.pb(v[i]); 40 | else pos.pb(v[i]); 41 | } 42 | if(count%2==0){ 43 | for(auto x: v){ 44 | sum+=abs(x); 45 | } 46 | } 47 | else{ 48 | srt(neg); 49 | srt(pos); 50 | int i=0; 51 | while(count>1){ 52 | sum+=abs(neg[i]); 53 | count--; 54 | i++; 55 | } 56 | if(pos.size()){ 57 | if(pos[0]