ACM--數組

1.C語言中數組不能進行賦值操作,如果要賦值數組a[max]裏面的k個數字到b[max]裏面去,可以這樣做:

 

   memcpy(b,a,sizeof(int)*k)  或   memcpy(b,a,sizeof(float)*k)

 

如果把a全部複製到b裏面去,則  memcpy(b,a,sizeof(a)).  頭文件 #include<string.h>

 

2.memset(a,0,sizeof(int))將數組a清零。

 

3.開燈問題

 

#include<stdio.h>
#include<math.h>
#define MAXN 1000+10
int a[MAXN];
void main()
{
	int n,k;
	scanf("%d%d",&n,&k);
	for(int i=0;i<n;i++)
		a[i]=0;
	for(int i=1;i<=k;i++)
		for(int j=0;j<n;j++)
			if(((j+1)%(i))==0)
				a[j]++;
	printf("%d",1);
	for(int i=1;i<n;i++)
		if(a[i]%2==1)
		{
			printf(" ");
			printf("%d",i+1);
		}
		printf("\n");
}

 

 


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章