最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

CF#269DIV2A,B,C,D_html/css

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 15:55:51
文檔

CF#269DIV2A,B,C,D_html/css

CF#269DIV2A,B,C,D_html/css_WEB-ITnose:A http://codeforces.com/contest/471/problem/A 解題思路:給你6個(gè)數(shù),問是否有至少4個(gè)數(shù)都相等,沒有的話輸出Alien,有的話再看剩下的兩個(gè)數(shù),如果相等就輸出 Elephant,否則輸出 Bear; #include #include #inc
推薦度:
導(dǎo)讀CF#269DIV2A,B,C,D_html/css_WEB-ITnose:A http://codeforces.com/contest/471/problem/A 解題思路:給你6個(gè)數(shù),問是否有至少4個(gè)數(shù)都相等,沒有的話輸出Alien,有的話再看剩下的兩個(gè)數(shù),如果相等就輸出 Elephant,否則輸出 Bear; #include #include #inc

A

http://codeforces.com/contest/471/problem/A

解題思路:給你6個(gè)數(shù),問是否有至少4個(gè)數(shù)都相等,沒有的話輸出“Alien”,有的話再看剩下的兩個(gè)數(shù),如果相等就輸出"

Elephant",否則
輸出"
Bear";

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define Maxn 100005#define Maxm 1000005#define lowbit(x) x&(-x)#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1#define PI acos(-1.0)#define make_pair MP#define LL long long #define Inf (1LL<<62)#define inf 0x3f3f3f3f#define re freopen("in.txt","r",stdin)#define wr freopen("out.txt","w",stdout)using namespace std;int main(){	int a[6],flag;	//re;wr;	while(~scanf("%d%d%d%d%d%d",&a[0],&a[1],&a[2],&a[3],&a[4],&a[5]))	{	flag=0;	sort(a,a+6);	if(a[0]==a[1]&&a[2]==a[1]&&a[3]==a[2])	flag=1;	if(a[1]==a[2]&&a[2]==a[3]&&a[3]==a[4])	flag=2;	if(a[2]==a[3]&&a[3]==a[4]&&a[4]==a[5])	flag=3;	if(flag==0)	{	puts("Alien");	continue;	}	if(flag==1)	{	if(a[4]==a[5])	{	puts("Elephant");	continue;	}	else	{	puts("Bear");	continue;	}	}	else if(flag==2)	{	if(a[0]==a[5])	{	puts("Elephant");	continue;	}	else	{	puts("Bear");	continue;	}	}	else	{	if(a[0]==a[1])	{	puts("Elephant");	continue;	}	else	{	puts("Bear");	continue;	}	}	}	return 0;}
B

http://codeforces.com/contest/471/problem/B

解題思路:給你一個(gè)序列,問是否有三種不同的方法使它們按非減序排序,顯然只有有2個(gè)相等的元素集合數(shù)大于等于2時(shí)或者有3個(gè)相等的元素的集合時(shí)才有解,有解的時(shí)候集合內(nèi)排序一下,我寫的很繁,導(dǎo)致后面的題目沒寫,整場就跪了

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define Maxn 100005#define Maxm 1000005#define lowbit(x) x&(-x)#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1#define PI acos(-1.0)#define make_pair MP#define LL long long #define Inf (1LL<<62)#define inf 0x3f3f3f3f#define re freopen("in.txt","r",stdin)#define wr freopen("out.txt","w",stdout)using namespace std;struct Mask{	int dif;	int id;	friend bool operator <(Mask a,Mask b)	{	if(a.dif!=b.dif)	return a.dif2)	{	flag=true;	break;	}	if(m[i]==2)	cnt++;	}	if(flag||cnt>=2)	{	puts("YES");	sort(arr+1,arr+1+n);	if(flag)	{	for(i=1;i<=n;i++)	{	if(m[arr[i].dif]>2)	break;	}	int a=arr[i].id;	int b=arr[i+1].id;	int c=arr[i+2].id;	//couti+2)	{	printf("%d%c",arr[j].id,j==n?'\n':' ');	}	else if(i==n-2)	{	printf("%d %d %d\n",b,a,c);	j+=2;	}	else	{	printf("%d %d %d ",b,a,c);	j+=2;	}	}	for(j=1;j<=n;j++)	{	if(ji+2)	{	printf("%d%c",arr[j].id,j==n?'\n':' ');	}	else if(i==n-2)	{	printf("%d %d %d\n",c,b,a);	j+=2;	}	else	{	printf("%d %d %d ",c,b,a);	j+=2;	}	}	}	else	{	int f1,f2;	for(i=1;i<=n;i++)	if(m[arr[i].dif]==2)	{	f1=i;	break;	}	for(i=i+2;i<=n;i++)	if(m[arr[i].dif]==2)	{	f2=i;	break;	}	int a=arr[f1].id;	int b=arr[f1+1].id;	int c=arr[f2].id;	int d=arr[f2+1].id;	//coutf2+1))	printf("%d%c",arr[i].id,i==n?'\n':' ');	else if(i>=f1&&i<=f1+1)	{	printf("%d %d ",a,b);	i+=1;	}	else if(i>=f2&&i<=f2+1)	{	if(f2==n-1)	printf("%d %d\n",c,d);	else	printf("%d %d ",c,d);	i+=1;	}	}	for(i=1;i<=n;i++)	{	if((if1+1)&&(if2+1))	printf("%d%c",arr[i].id,i==n?'\n':' ');	else if(i>=f1&&i<=f1+1)	{	printf("%d %d ",a,b);	i+=1;	}	else if(i>=f2&&i<=f2+1)	{	if(f2==n-1)	printf("%d %d\n",d,c);	else	printf("%d %d ",d,c);	i+=1;	}	}	for(i=1;i<=n;i++)	{	if((if1+1)&&(if2+1))	printf("%d%c",arr[i].id,i==n?'\n':' ');	else if(i>=f1&&i<=f1+1)	{	printf("%d %d ",b,a);	i+=1;	}	else if(i>=f2&&i<=f2+1)	{	if(f2==n-1)	printf("%d %d\n",c,d);	else	printf("%d %d ",c,d);	i+=1;	}	}	}	}	else	{	puts("NO");	continue;	}	}}
C

http://codeforces.com/contest/471/problem/C

解題思路:首先二分出n個(gè)棍子最多可以搭幾層,然后從1開始枚舉,注意到每一層的數(shù)目都是一個(gè)公差為3的等差數(shù)列,判斷一下這一層能否滿足n的需求即可

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define Maxn 100005#define Maxm 1000005#define lowbit(x) x&(-x)#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1#define PI acos(-1.0)#define make_pair MP#define LL long long #define Inf (1LL<<62)#define inf 0x3f3f3f3f#define re freopen("in.txt","r",stdin)#define wr freopen("out.txt","w",stdout)using namespace std;LL cal(LL n){	return (3*n+1)*n/2;}LL calc(LL a,LL k,LL n){	return a+(n-1)*k;}int main(){	LL n,ans;	//re;wr;	while(~scanf("%I64d",&n))	{	ans=0;	LL l=0,r=(Maxm<<1),lv;	while(r>=l)	{	LL m=(l+r)>>1;	if(cal(m)<=n)	{	lv=m;	l=m+1;	}	else	r=m-1;	}	for(LL i=1;i<=lv;i++)	{	LL a=cal(i);	if((n-a)%3==0)	ans++;	}	printf("%d\n",ans);	}	return 0;}
D

http://codeforces.com/problemset/problem/471/D

解題思路:做出兩個(gè)數(shù)列的相鄰兩項(xiàng)的差分?jǐn)?shù)列,KMP判斷短的差分?jǐn)?shù)列在長的差分?jǐn)?shù)列中出現(xiàn)幾次即可,特判n=1和w=1的情況

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define Maxn 100005#define Maxm 1000005#define lowbit(x) x&(-x)#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1#define PI acos(-1.0)#define make_pair MP#define LL long long #define Inf (1LL<<62)#define inf 0x3f3f3f3f#define re freopen("in.txt","r",stdin)#define wr freopen("out.txt","w",stdout)using namespace std;int next[Maxn<<1];void get_next(int *arr,int len){	int j=0,k=-1;	next[0]=-1;	while(j<=len)	{	if(k==-1||arr[j]==arr[k])	{	j++;k++;	next[j]=k;	}	else	k=next[k];	}}int kmp(int *a,int *b,int l1,int l2){	get_next(a,l1);	get_next(b,l2);	int i=0,j=0,ans=0;	while(i=1)	ca[i-1]=a[i]-a[i-1];	}	for(int i=0;i=1)	cb[i-1]=b[i]-b[i-1];	}	if(m==1||n==1)	{	printf("%d\n",max(m,n));	continue;	}	printf("%d\n",m>=n?kmp(ca,cb,m-1,n-1):kmp(cb,ca,n-1,m-1));	}	return 0;}

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

CF#269DIV2A,B,C,D_html/css

CF#269DIV2A,B,C,D_html/css_WEB-ITnose:A http://codeforces.com/contest/471/problem/A 解題思路:給你6個(gè)數(shù),問是否有至少4個(gè)數(shù)都相等,沒有的話輸出Alien,有的話再看剩下的兩個(gè)數(shù),如果相等就輸出 Elephant,否則輸出 Bear; #include #include #inc
推薦度:
標(biāo)簽: cf html css
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top