?
// Problem: J - Odd-Even Game
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/J
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
// 簽到題
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se secondvoid solve()
{int a,b;cin>>a>>b;if((a&1)==0) swap(a,b);if(a>b) cout<<1<<endl;else cout<<2<<endl;
}signed main()
{IOSint T=1;
// cin>>T;while(T--) solve(); return 0;
}
?
?
// Problem: C - SSPPSPSP
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/C
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
//
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second
const int mod = 998244353;
const int N = 15;
int a[N];int power(int a,int b)//快速冪函數
{int ans=1;while(b){if(b&1){ans*=a;ans%=mod;}a*=a;a%=mod;b>>=1;}return ans%mod;
}void solve()
{int ans=0;int sums=0,sump=1;int n,k; cin>>n>>k;for(int i=0;i<n;i++){cin>>a[i];sums+=a[i]; sums%=mod;//sums中存放從a[0]到a[n-1]的和sump*=a[i]; sump%=mod;//sump中存放從a[0]到a[n-1]的積}string s; cin>>s;if(s[s.size()-1]=='p')//先確定開始的ansans = sump;elseans = sums;for(int i=s.size()-2;i>=0;i--){if(s[i]=='p')//如果是累乘操作 就相當于乘了n次sump{ans = power(ans,n);ans%=mod;}else//如果是累加操作就相當于是進行了n次累加操作{ans*=n;ans%=mod;}}cout<<ans%mod<<endl;
}
/*問題剖析:注意看公式的角標 -> (x1+x2+x3) mod n 換句話說 角標會每次都從第一個數到最后一個數當內層循環 x1 x2都為0 這時候x3不斷增加 角標實際上就是遍歷了一遍數組所以只需要逆向判斷當前操作是加還是乘即可如果是加法就是把當前的ans累加了n次如果是乘法就是把當前的ans累乘了n次正常模擬即可
*/
signed main()
{IOSint T=1;
// cin>>T;while(T--) solve(); return 0;
}
// Problem: D - Coprime
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/D
// Memory Limit: 1024 MB
// Time Limit: 2000 ms
//
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second//const int mod = 998244353;void solve()
{int x,y;cin>>x>>y;for(int i=x+1;i<y;i++){if(__gcd(i,x)==1&&__gcd(i,y)==1){cout<<i<<endl;return ;}}cout<<-1<<endl;
}signed main()
{IOSint T=1;cin>>T;while(T--) solve(); return 0;
}
?
?
// Problem: F - Ever Forever
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/F
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
//
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second//const int mod = 998244353;void solve()
{vector<int> a;int ans=0;int n; cin>>n;string s;cin>>s;for(int i=0;i<s.size();i++){if(s[i]=='e'){a.push_back(i);}else{for(auto it : a){ans += (i-it);}}}cout<<ans<<endl;
}signed main()
{IOSint T=1;
// cin>>T;while(T--) solve(); return 0;
}
// Problem: G - Rock-Paper-Scissors
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/G
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
//
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second
vector<int> v(4),a(4),vv(4),aa(4);void solve()
{int n;cin>>n;cin>>v[1]>>v[2]>>v[3]>>a[1]>>a[2]>>a[3];vv=v,aa=a;int mx=0;//假設下標 1 2 3 分別為石頭剪刀布 計算mx就需要讓小V盡可能的贏 首先計算小V出石頭能贏的局數int x = min(v[1],a[2]);v[1]-=x;a[2]-=x;mx+=x;//小V出剪刀能贏的局數x = min(v[2],a[3]);v[2]-=x;a[3]-=x;mx+=x;//小V出布能贏的局數x = min(v[3],a[1]);v[3]-=x;a[1]-=x;mx+=x;//如果小V的石頭還有剩余 那么就貪心一點 先計算能平局的局數 if(v[1]){x = min(v[1],a[1]);v[1]-=x;a[1]-=x;if(v[1])//如果小V還有剩余的石頭說明已經把小A的剪刀和石頭都消耗完了 那么就沒辦法了 再貪心也只能輸了就統計輸的局數{int xx=min(v[1],a[3]);mx-=xx;v[1]-=xx;a[3]-=xx;}}//如果小V的剪刀還有剩余 那么就貪心一點 先計算能平局的局數 if(v[2]){x = min(v[2],a[2]);v[2]-=x;a[2]-=x;if(v[2])//如果小V還有剩余的剪刀說明已經把小A的布和石頭都消耗完了 那么就沒辦法了 再貪心也只能輸了就統計輸的局數{int xx=min(v[2],a[1]);mx-=xx;v[2]-=xx;a[1]-=xx;}}//如果小V的布還有剩余 那么就還貪心一點 先計算能平局的局數 if(v[3]){x = min(v[3],a[3]);v[3]-=x;a[3]-=x;if(v[3])//如果小V還有剩余的布說明已經把小A的布和石頭都消耗完了 那么就沒辦法了 再貪心也只能輸了就統計輸的局數{int xx=min(v[3],a[2]);mx-=xx;v[3]-=xx;a[2]-=xx;}}cout<<mx<<' ';int mi=0;x = min(aa[1],vv[2]);aa[1]-=x;vv[2]-=x;mi+=x;//同上面計算一樣 要計算最小值 就要讓小A盡可能的贏 即讓小V盡可能的輸 只需要把前文中的代碼復制過來 a改為vv v改為aa即可x = min(aa[2],vv[3]);aa[2]-=x;vv[3]-=x;mi+=x;//同上x = min(aa[3],vv[1]);aa[3]-=x;vv[1]-=x;mi+=x;//同上if(aa[1]){x = min(aa[1],vv[1]);aa[1]-=x;vv[1]-=x;if(aa[1])//同上{int xx=min(aa[1],vv[3]);mi-=xx;aa[1]-=xx;vv[3]-=xx;}}//同上if(aa[2]){x = min(aa[2],vv[2]);aa[2]-=x;vv[2]-=x;if(aa[2])//同上{int xx=min(aa[2],vv[1]);mi-=xx;aa[2]-=xx;vv[1]-=xx;}}//同上if(aa[3]){x = min(aa[3],vv[3]);aa[3]-=x;vv[3]-=x;if(aa[3])//同上{int xx=min(aa[3],vv[2]);mi-=xx;aa[3]-=xx;vv[2]-=xx;}}cout<<-mi<<endl;
}signed main()
{IOSint T=1;cin>>T;while(T--) solve(); return 0;
}
?
// Problem: L - Good Matrix
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/L
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
//
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second
const int mod = 998244353;
int power(int a,int b)//快速冪函數
{int ans=1;while(b){if(b&1){ans*=a;ans%=mod;}a*=a;a%=mod;b>>=1;}return ans%mod;
}void solve()
{int x,y;cin>>x>>y;int ans=0;if(x%2==0||y%2==0){if(x&1){ans=y-1;}if(y&1){ans=x-1;}}else if(x&1&&y&1){ans = x+y-2;}elseans=0;cout<<power(2,ans)<<endl;
}signed main()
{IOSint T=1;cin>>T;while(T--) solve(); return 0;
}