奮鬥群群賽 15,16

2021-08-09 01:59:53 字數 3610 閱讀 3179

t2s-palindrome

t3 exponential notation

t4swaps in permutation

t5xor-sequences

t6couple cover

t1位置所在

就是給你乙個 01串,讓你找出是否這個串只有乙個 0 ,如果是,輸出」yes」,不然就是輸出」no」!但是只有乙個鈕扣的時候要進行特判,必須是只有1的串(給題意殺了……)

#include 

using

namespace

std;

int main()

for(int i=1; i<=n; i++)

if(ans==1)

cout

<<"yes";

else

cout

<<"no";

return

0;}

t2位置所在

就是問你這一串英文本母是不是能夠在」鏡子」的照應之下,是和原來是對應一半相等的?

其實就是乙個大模擬!

#include 

using

namespace

std;

const

int n=1005;

char s[n];

int check(char x,char y)

int main()

if(len%2==1)

else

return

0;}

t3位置所在

就是讓你講乙個數字,變成 x*pow(10,n)形式,比如

input

16 output

1.6e1

input

01.23400

output

1.234

input

.100

output

1e-1

input

100.

output

1e2

#include 

using

namespace

std;

const

int n=1000005;

char s[n];

int main()

else

if (s[i]>'0'&&s[i]<='9')

}flag=0;

for(int i=n; i>=1; i--)

else

if (s[i]!='0')

}//coutif(sepelse

int p=0;

for(int i=sta+1; i<=end; i++)

printf("%c",s[sta]);

if(p==1) cout

<<'.';

if(p)

}if(l!=0)

}

t4位置所在

給乙個數列,現在可以交換ai和bi,問能得到的最大的字典序的數列是什麼

還有就是a->b,b->c那麼 a->c啊!所以就是可以用到乙個並查集的工作!

#include 

#include

#include

#include

#include

#include

#include

using

namespace

std;

const

int n=1000005;

int fa[n],a[n];

int n,m;

vector

value[n];

vector

order[n];

int find(int a)

int add(int x,int y)

int main()

for(int i=1; i<=m; i++)

for(int i=1; i<=n; i++)

for(int i=1; i<=n; i++)

t5位置所在

給定序列,從序列中選擇k(1≤k≤1e18)個數(可以重複選擇),使得得到的排列滿足xi與xi+1異或的二進位制表示中1的個數是3的倍數。問長度為k的滿足條件的 序列有多少種?

矩陣快速冪!

#include 

#include

#include

#include

#define ll long long

using

namespace

std;

const

int mod=1000000007;

ll m,a[1005];

int n,ans;

struct number

} ans,k,fin;

number operator * (number ans,number k)

return res;

}int main()

for(int i=1; i<=n; i++)

for(int j=1; j<=n; j++)

if(cnt%3==0)

k.edge[i][j]=1;

}m--;

for(int i=1; i<=n; i++)

ans.edge[i][i]=1;

while(m)

k=k*k;

m>>=1;

// cout<}

for(int i=1; i<=n; i++)

for(int j=1; j<=n; j++)

printf("%d\n",ans%mod);

return

0;}

就是在看見了1e18的資料的時候就是想到一定是用log的演算法來完成它,所以就是要想到快捷的方法,於是就是矩陣快速冪!

t6位置所在

就是問你在乙個序列裡面,有多少對數的積是大於等於p 的?

有多組詢問!

如果簡單的列舉會十分的困難,肯定會tle,但是其實這道題目的資料會有許多重複的,所以只要用乙個桶來裝這些數字,在預處理一下就好了,(正難則反)只要看有多少是小於p的而且有多少是總的,減一下就好了!

#include 

using

namespace

std;

const

int n=3000005;

long

long n;

long

long num[n],qus[n];

int main()

for(int i=1; i*ifor(int j=i; i*jif(i==j)

qus[i*i]+=num[i]*(num[i]-1);

else

qus[i*j]+=num[i]*num[j]*2;

}for(int i=0; i1];

}//que[n-1]?a¡á????a

scanf("%d",&m);

for(int i=1; i<=m; i++)

}

奮鬥群群賽 4

t2arpa and an exam about geometry t3five dimensional points t4polycarpus dice總結 t1位置所在 有一排觀眾席,有n個人,當t 1時第乙個人站起來,t 2時第二個人站起來,t 3時第三個人站起來 到k位置,都是站起來,但是k...

奮鬥群群賽 9

t2the queue t3garland t4cartons of milk t5change free總結 t1位置所在 就是給你n個數字,讓你建乙個塔,從n到底部而且最後再到1,輸入天數,如果可以建立塔的話,輸出這些部分,如果沒有可以建的東西,就輸出換行就好了,第i位對應第i天下下來的食物!求...

奮鬥群群賽7總結與心得

t2t3 t4t5 本次人品很好,老師發了一次福利,五道題都很水 我應該沒有資格說這種話吧 對於乙個大於1的正整數,輸出它最多能被分解成多少個質數之和,以及這些質數.明顯的水題吧.對於偶數,全部輸出2 對於奇數,輸出很多2加上乙個3就可以了.include using namespace std i...