| 比赛 | 
    20111107 | 
    评测结果 | 
    WWWWWWWWWW | 
    | 题目名称 | 
    产生01串 | 
    最终得分 | 
    0 | 
    | 用户昵称 | 
    苏轼 | 
    运行时间 | 
    0.000 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    0.00 MiB  | 
    | 提交时间 | 
    2011-11-07 09:16:27 | 
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
using namespace std;
int f[14]={0,1,0,1,1,0,1,0,1,1,0,1,1,0};
long long answer=0;
long long e=0,r=0;
int main()
{
	freopen ("infinit.in","r",stdin);
	freopen ("infinit.out","w",stdout);
	int n;
	scanf("%d",&n); 
	for (int i=0;i<n;i++)
	{
		answer=0;
		e=0;
		r=0;
		long long a,b;
		cin>>a>>b;
		long long c,d;
		c=a/13;
		d=b/13;
		if (d-c>=2)
		{
			answer+=8*(d-c-1);
		}
		if  (c==d)
		{
			int o,p;
			o=a%13;
			p=b%13;
			for (int u=o;u<=p;u++)
			{
				if (f[u]==1)
				{
					answer++;
				}
			}
			cout<<answer<<endl;
			continue;
		}
		c=a%13;
		d=b%13;
		for (int j=c;j<=13;j++)
		{
			if (f[j]==1)
			{
				e++;
			}
		}
		for (int k=1;k<=d;k++)
		{
			if (f[k]==1)
			{
				r++;
			}
		}
		cout<<answer+e+r<<endl;
	}
	return 0;
}