1. 程式人生 > >51Nod1082 與7無關的數

51Nod1082 與7無關的數

主要i也要定義成long long型別,否則i*i時資料會溢位的。

#include<iostream>
#include<cmath>
#include<cstring>
using namespace std;
int f(int a)
{
	char str[10];
	sprintf(str,"%d",a);
	int i;
	for(i=0;i<strlen(str);i++)
		if(str[i]=='7')
			return 0;
	if(a%7==0)
		return 0; 
	return 1;
}
long long dp[1000001];
int main()
{
	int T;
	cin>>T;	
	memset(dp,0,sizeof(0));
	for(long long i=1;i<1000001;i++)
			dp[i]=dp[i-1]+(f(i)==1?i*i:0);
	while(T--)
	{
		int a;
		cin>>a;
		cout<<dp[a]<<endl;
	} 
	return 0;
}