14天閱讀挑戰賽
可以看出有這樣的一個不等式
左邊的式子可以化成n*(n-2*k-1),然后可以發現當i<=(n-2*k-1)時,即使j取到了n,a[i]|a[j]=0,還是要小于等于最小值的,所以可以直接從n-2*k開始遍歷,而k最多100,所以這題直接暴力就可以了,,,
Codeforces Round #735 (Div. 2) B. Cobb(巧妙的暴力優化)_合金Bunny醬的博客-博客
#includeusing namespace std;
#define int long long
const int N = 2e5+5;
const int mod=998244353;
const int inf=1e18;
const double eps=1e-8;
const double pi=acos(-1);
int qpow(int a,int b)
{
int res=1;
while(b)
{
if(b&1) res=res*a%mod;
a=a*a%mod;
b>>=1;
}
return res;
}
int getinv(int a){return qpow(a,mod-2);}
int t,n,k,a[100005];
signed main()
{
//ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
//freopen("in.txt","r",stdin);
cin>>t;
while(t--)
{
cin>>n>>k;
int ans=-1e18;
for(int i=1;i<=n;i++) cin>>a[i];
for(int i=max(n-2*k,1LL);i<=n;i++)
for(int j=i+1;j<=n;j++)
ans=max(ans,i*j-k*(a[i]|a[j]));
cout<
Wish I Knew How to Sort 概率假設0的個數是cnt0個,那么前cnt0的位置一定都要是0才可以,假設cnt1為前cnt0的位置是1的個數,那么一定得把這cnt1個1都換成0才可以,一共有cnt1*cnt1種換法,總的換法是C(n,2),所以總的期望就是p(cnt1)+p(cnt1-1)+...+p(1),也就是還剩cnt1個1的期望加上還剩cnt1-1個的期望一直加到還剩1個的期望
Codeforces Round #829 (Div. 2 + Div. 1) 2C/1A - 2E/1C - 知乎 (zhihu.com)
#includeusing namespace std;
#define int long long
const int N = 2e5+5;
const int mod=998244353;
const int inf=1e18;
const double eps=1e-8;
const double pi=acos(-1);
int qpow(int a,int b)
{
int res=1;
while(b)
{
if(b&1) res=res*a%mod;
a=a*a%mod;
b>>=1;
}
return res;
}
int getinv(int a){return qpow(a,mod-2);}
int t,n,a[200005],dp[200005];
signed main()
{
ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
//freopen("in.txt","r",stdin);
cin>>t;
while(t--)
{
cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
int cnt0=count(a+1,a+n+1,0);
int cnt1=count(a+1,a+cnt0+1,1);
dp[0]=0;
int c2=(n*(n-1)%mod)*getinv(2)%mod;
for(int i=1;i<=cnt1;i++)
{
int p=(i*i%mod)*getinv(c2)%mod;
//dp[i]=dp[i-1]+getinv(p);
}
cout<
Circular Billiard Table?要求解a|bx的最小整數解x,則x=a/gcd(a,b);
圓心角的度數c是2*a/b,走n次就是nc,能夠回到終點的條件是nc=k*360,那么只要取一個最小的n滿足等式就可以,用到上面那個結論,答案就是b*180/gcd(b*180,a);
2021 CCPC 威海 部分題解 - Ghaser - 博客園 (cnblogs.com)
#includeusing namespace std;
#define endl '\n'
#define int long long
const int N = 2e5+5;
const int mod=2520;
const int inf=1e18;
const double eps=1e-8;
const double pi=acos(-1);
int qpow(int a,int b)
{
int res=1;
while(b)
{
if(b&1) res=res*a%mod;
a=a*a%mod;
b>>=1;
}
return res;
}
int getinv(int a){return qpow(a,mod-2);}
int Lcm(int a,int b){return a*b/__gcd(a,b);}
int t;
signed main()
{
ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
//freopen("in.txt","r",stdin);
cin>>t;
while(t--)
{
int a,b;
cin>>a>>b;
int x=b*180;
int ans=x/__gcd(x,a)-1;
cout<
G - Shinyruo and KFC自己寫的代碼太多了,而且思路也有點復雜,原來只需要統計每個數出現多少次然后就是幾次方就可以,a數組最多會出現根號(1e5)個數,所以直接暴力就可以,枚舉m,每次都是所有的C(i,a[i])相乘,然后發現有很多a[i]是相同的,然后看看出現了多少次就是多少次方就可以了
【2021CCPC 威海】A、D、G、J_我wa的一聲就哭出來了的博客-博客
#includeusing namespace std;
#define endl '\n'
#define int long long
const int N = 2e5+5;
const int mod=998244353;
const int inf=1e18;
const double eps=1e-8;
const double pi=acos(-1);
int qpow(int a,int b)
{
int res=1;
while(b)
{
if(b&1) res=res*a%mod;
a=a*a%mod;
b>>=1;
}
return res;
}
int getinv(int a){return qpow(a,mod-2);}
int Lcm(int a,int b){return a*b/__gcd(a,b);}
int n,m,a[50005],fac[100005],ifac[100005],tx[100005];
sets;
void init()
{
fac[0]=1;
for(int i=1;i<=100000;i++) fac[i]=fac[i-1]*i%mod;
ifac[100000]=getinv(fac[100000]);
for(int i=99999;i>=0;i--) ifac[i]=ifac[i+1]*(i+1)%mod;
}
int C(int a,int b)
{
if(b>a) return 0;
return (fac[a]*ifac[a-b]%mod)*ifac[b]%mod;
}
signed main()
{
ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
//freopen("in.txt","r",stdin);
cin>>n>>m;
init();
for(int i=1;i<=n;i++)
{
cin>>a[i];
tx[a[i]]++;
s.insert(a[i]);
}
for(int i=1;i<=m;i++)
{
int ans=1;
for(auto x:s)
{
ans=(ans*qpow(C(i,x),tx[x]))%mod;
}
cout<
你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧
網頁題目:CodeforcesRound#829(Div.2)E-創新互聯
分享URL:http://vcdvsql.cn/article12/dcphdc.html
成都網站建設公司_創新互聯,為您提供虛擬主機、網站營銷、App開發、定制網站、用戶體驗、網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯