a-e非常签到
a
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define ll long long
typedef pair<int, int> pii;
#define N 250005
#define endl '\n'
int mod=998244353;
void solve() {
string s;
cin>>s;
if((s.length())>1){
cout<<"kou";
}
else{
cout<<"yukari";
}
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t = 1;
// cin >> t;
while (t--) {
solve();
}
return 0;
}
b
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define ll long long
typedef pair<int, int> pii;
#define N 250005
#define endl '\n'
int mod=1e9+7;
int a[N];
void solve() {
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
string s;
cin>>s;
int len=s.length()-1;
int ans=0;
int now=1;
for(int i=0;i<=len;i++){
char c=s[i];
if(c=='R'){
now=min(now+1,n);
}
else{
now=max(now-1,1ll);
}
ans+=a[now];
ans%=mod;
//cout<<c<<" "<<now<<'\n';
}
cout<<ans;
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t = 1;
// cin >> t;
while (t--) {
solve();
}
return 0;
}
c
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define ll long long
typedef pair<int, int> pii;
#define N 250005
#define endl '\n'
int mod=998244353;
int a[N];
void solve() {
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
sort(a+1,a+n+1);
set<int>s;
if(n&1){
s.insert(a[n]);
int l=1,r=n-1;
while(l<=r){
s.insert(a[l]*a[r]);
l++;
r--;
}
}
else{
int l=1,r=n;
while(l<=r){
s.insert(a[l]*a[r]);
l++;
r--;
}
}
cout<<*s.rbegin()-*s.begin();
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t = 1;
// cin >> t;
while (t--) {
solve();
}
return 0;
}
d
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define ll long long
typedef pair<int, int> pii;
#define N 250005
#define endl '\n'
int mod=998244353;
vector<int> a[N];
int c[N];
int mx;
int ans=0;
void dfs(int u,int fa,int sum){
mx=max(mx,sum);
c[u]+=1;
for(auto v:a[u]){
if(v==fa) continue;
dfs(v,u,sum+1);
if(c[v]%2==0){
ans++;
}
else{
c[u]+=c[v];
}
}
}
void solve() {
int n;
cin>>n;
for(int i=1;i<=n-1;i++){
int u,v;
cin>>u>>v;
a[u].push_back(v);
a[v].push_back(u);
}
dfs(1,0,1);
if(c[1]%2==1){
cout<<-1;
}
else{
cout<<ans;
// cout<<-1;
}
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t = 1;
// cin >> t;
while (t--) {
solve();
}
return 0;
}
e
dp
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+6;
namespace modnum_space {
typedef long long ll;
const ll pmod = 1e9+7;
struct modnum;
modnum inv(modnum a);
ll exgcd(ll a, ll b, ll &x, ll &y);
modnum qpow(modnum a, modnum b, modnum p);
struct modnum {
ll val;
modnum(){ val = 0; }
modnum(ll a) { val = (a%pmod+pmod)%pmod; }
modnum(int a) { val = (a%pmod+pmod)%pmod; }
friend modnum operator + (const modnum &a, const modnum &b){ return (a.val+b.val)%pmod; }
friend modnum operator - (const modnum &a, const modnum &b){ return (a.val-b.val+pmod)%pmod; }
friend modnum operator * (const modnum &a, const modnum &b){ return (a.val*b.val)%pmod; }
friend modnum operator / (const modnum &a, const modnum &b){ return (a.val*inv(b.val)).val%pmod; }
friend modnum& operator += (modnum &a, const modnum &b){ return a = a+b; }
friend modnum& operator -= (modnum &a, const modnum &b){ return a = a-b; }
friend modnum& operator *= (modnum &a, const modnum &b){ return a = a*b; }
friend modnum& operator /= (modnum &a, const modnum &b){ return a = a/b; }
};
modnum inv(modnum a)
{
ll x, y;
exgcd(a.val, pmod, x, y);
x = (x%pmod+pmod)%pmod;
return x;
}
modnum qpow(modnum a, ll b)
{
modnum ans = 1;
for(; b; b >>= 1, a *= a)
if(b&1) ans *= a;
return ans;
}
ll exgcd(ll a, ll b, ll &x, ll &y)
{
if(b == 0){ return x = 1, y = 0, a; }
ll d = exgcd(b, a%b, x, y);
ll z = x; x = y; y = z-(a/b)*y;
return d;
}
#ifdef _GLIBCXX_IOSTREAM
std::istream& operator >> (std::istream& cin, modnum &a)
{ cin >> a.val; a.val %= pmod; return cin; }
std::ostream& operator << (std::ostream& cout, modnum a)
{ cout << a.val; return cout; }
#endif
}
using namespace modnum_space;
#define z modnum
z dp[1005][1005];
z sl[1005][1005];
void solve() {
int n,k;
cin>>n>>k;
string s;
cin>>s;
s=' '+s;
z ans=0;
sl[0][0]=1;
for(int i=1;i<=n;i++){
sl[i][0]=1;
sl[i][1]=i;
for(int j=1;j<=min(i-1,k-1);j++){
sl[i][j+1]=sl[i-1][j];
sl[i][j+1]+=sl[i-1][j+1];
}
}
for(int i=1;i<=n;i++){
for(int j=0;j<=min(i-1,k-1);j++){
dp[i][j+1]=dp[i-1][j]*10+(sl[i-1][j])*(s[i]-'0');
dp[i][j+1]+=dp[i-1][j+1];
}
}
cout<<dp[n][k]<<'\n';//104+52+02+22
}
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
int t = 1;
// cin >> t;
while(t--){
solve();
}
return 0;
}
f
概率dp,
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+6;
int mod=1e9+7;
namespace modnum_space {
typedef long long ll;
const ll pmod = 1e9+7;
struct modnum;
modnum inv(modnum a);
ll exgcd(ll a, ll b, ll &x, ll &y);
modnum qpow(modnum a, modnum b, modnum p);
struct modnum {
ll val;
modnum(){ val = 0; }
modnum(ll a) { val = (a%pmod+pmod)%pmod; }
modnum(int a) { val = (a%pmod+pmod)%pmod; }
friend modnum operator + (const modnum &a, const modnum &b){ return (a.val+b.val)%pmod; }
friend modnum operator - (const modnum &a, const modnum &b){ return (a.val-b.val+pmod)%pmod; }
friend modnum operator * (const modnum &a, const modnum &b){ return (a.val*b.val)%pmod; }
friend modnum operator / (const modnum &a, const modnum &b){ return (a.val*inv(b.val)).val%pmod; }
friend modnum& operator += (modnum &a, const modnum &b){ return a = a+b; }
friend modnum& operator -= (modnum &a, const modnum &b){ return a = a-b; }
friend modnum& operator *= (modnum &a, const modnum &b){ return a = a*b; }
friend modnum& operator /= (modnum &a, const modnum &b){ return a = a/b; }
};
modnum inv(modnum a)
{
ll x, y;
exgcd(a.val, pmod, x, y);
x = (x%pmod+pmod)%pmod;
return x;
}
modnum qpow(modnum a, ll b)
{
modnum ans = 1;
for(; b; b >>= 1, a *= a)
if(b&1) ans *= a;
return ans;
}
ll exgcd(ll a, ll b, ll &x, ll &y)
{
if(b == 0){ return x = 1, y = 0, a; }
ll d = exgcd(b, a%b, x, y);
ll z = x; x = y; y = z-(a/b)*y;
return d;
}
#ifdef _GLIBCXX_IOSTREAM
std::istream& operator >> (std::istream& cin, modnum &a)
{ cin >> a.val; a.val %= pmod; return cin; }
std::ostream& operator << (std::ostream& cout, modnum a)
{ cout << a.val; return cout; }
#endif
}
using namespace modnum_space;
#define z modnum
z dp[100][100];
inline ll power(ll a,ll b,ll mod){
if(b==0){
return 1;
}
ll res = 1;
while(b>0){
if(b&1){
res = (res*a)%mod;
}
a= (a*a)%mod;
b>>=1;
}
return res;
}
void solve() {
ll n;
cin>>n;
int x=0,y=0;
while(n%2==0){
x++;
n/=2;
}
while(n%3==0){
y++;
n/=3;
}
if(n!=1){
cout<<-1;
return;
}
ll dm=power(2,mod-2,mod);
for(int i=0;i<=x;i++){
for(int j=0;j<=y;j++){
if(i&&j)
dp[i][j]=(3+dp[i][j-1]+dp[i-1][j])*dm;
else if(i){
dp[i][j]=(3+dp[i-1][j]);
}
else if(j)
{
dp[i][j]=(3+dp[i][j-1]);
}
}
}
//cout<<x<<' '<<y<<'\n';
cout<<dp[x][y];
}
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
int t = 1;
// cin >> t;
while(t--){
solve();
}
return 0;
}