閱讀398 返回首頁    go 技術社區[雲棲]


poj 2498 StuPId

之前做過一道類似的題目,有一道。。。這題其實還好,不是那麼陰。。。

至少題目裏麵有打(!)提醒。。。


#include <stdio.h>
#include <string.h>

char Num[10];
int factors[]={9,3,7};

void process()
{
	int missPos; //保存丟失了哪一位
	int i;
	int sum=0;
	int numInt;
	for(i=strlen(Num)-1;i>=0;i--)
	{
		if(Num[i]=='?')
			missPos=i;

		else
		{
			numInt=Num[i]-48;

			sum+=numInt*(factors[(strlen(Num)-1-i)%3]);
		}
	}

	//printf("sum == %d\n",sum);

	for(i=0;i<10;i++)
		if((sum+i*(factors[(strlen(Num)-1-missPos)%3]))%10==0)
		{
			Num[missPos]=i+48;
			break;
		}

	//sum+=i*(factors[(strlen(Num)-1-missPos)%3]);
	//printf("sum == %d\n",sum);
	
	printf("%s\n\n",Num);
}

int main()
{
	int n;
	scanf("%d",&n);

	int count=n;
	int i;
	while(count--)
	{
		scanf("%s",Num);

		printf("Scenario #%d:\n",n-count);

		process();
	}

	return 0;
}




最後更新:2017-04-03 05:40:00

  上一篇:go SQL存在一個表而不在另一個表中的數據
  下一篇:go js中的函數function