zoj 1383 Binary Numbers&&zoj 1491 Climbing Worm(简单)

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1383

睡前一水。

题意:

找出十进制数转换为二进制数中的1的位置。


分析:

没什么难度,那个数组存下就行。

#include <stdio.h>
#include <string.h>
int main()
{
	int d,n,a[100];
	int i,j;
	scanf("%d",&d);
	while(d--)
	{
		i=0;
		memset(a,0,sizeof(a));
		scanf("%d",&n);
		while(n)
		{
			a[i++]=n%2;
			n=n/2;
		}
		for(j=0;j<=i;j++)
		{
			if(a[j]==1)
			{
				printf("%d",j);
				break;
			}
		}
		for(j++;j<=i;j++)
			if(a[j]==1) printf(" %d",j);
		printf("\n");

	}
	return 0;
}

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1494

题意:

虫子一上一下移动,什么时候爬出去?


分析:注意判断要在上升后break掉。


#include<stdio.h>
int main()
{
	int n,u,d;
	int t,temp;
	while(scanf("%d%d%d",&n,&u,&d)!=EOF)
	{
		if(n==0) break;
		temp=0;
		t=0;
		while(1)
		{
			temp+=u;
			t++;
			if(temp>=n) break;
			temp-=d;
			t++;
		}
		printf("%d\n",t);
	}
	return 0;
}



你可能感兴趣的:(zoj 1383 Binary Numbers&&zoj 1491 Climbing Worm(简单))