Bullshit Bingo

 

下面是我的代码:

#include <stdio.h>
#include <string.h>
char s1[1000000];
char s3[1000000][25];
int main()
{
	int i,j,s,t,k1,k2,len;
    int l;
	int x1,x2;
    int l1,l2,x,flag,s6;
	int max,key;
	char s2[105];
	char s4[]={"BULLSHIT"};
	i=0;
	while(gets(s2))
	{
		if(i==0)
		{
			strcpy(s1,s2);
			i=1;
		}else
		{
			len=strlen(s1);
			s1[len]=' ';
			s1[len+1]='\0';
			strcat(s1,s2);
		}
	}
	l=strlen(s1);
	k1=0;
	k2=0;
	s=0;
	x1=x2=0;
	for(i=0;i<=l-1;i++)
	{
		if((s1[i]>='a'&&s1[i]<='z'||s1[i]>='A'&&s1[i]<='Z')&&k1==0)
		{
			k1=1;
			k2=0;
		}else if(k1==1&&k2==0)
		{
			k2=1;
			for(j=i-1;j<=l-1;j++)
			{
				if(!(s1[j]>='a'&&s1[j]<='z'||s1[j]>='A'&&s1[j]<='Z'))
				{
					break;
				}else
				{
					s3[x1][x2]=s1[j];
					x2+=1;
				}
			}
			s3[x1][x2]='\0';
			x1+=1;
			x2=0;
		}
		if(k1==1&&!(s1[i]>='a'&&s1[i]<='z'||s1[i]>='A'&&s1[i]<='Z'))
		{
			k1=0;
		}
	}
	s=0;
	max=0;key=0;flag=-1;s6=0;
	for(i=0;i<=x1-1;i++)
	{
		if(strcmp(s3[i],s4)==0)
		{
			flag=i;
			key=1;
			s6+=1;
		}else
		{
			l2=strlen(s3[i]);
			for(j=flag+1;j<=i-1;j++)
			{
				l1=strlen(s3[j]);
				if(l1==l2)
				{
					for(x=0;x<=l1-1;x++)
					{
						if(s3[i][x]>='a'&&s3[i][x]<='z')
						{
							if(s3[i][x]==s3[j][x]||s3[i][x]-32==s3[j][x])
							{
								;
							}else
							{
								break;
							}
						}else if(s3[i][x]>='A'&&s3[i][x]<='Z')
						{
							if(s3[i][x]==s3[j][x]||s3[i][x]+32==s3[j][x])
							{
								;
							}else
							{
								break;
							}
						}
					}
					if(x==l1)
					{
						break;
					}
				}
			}
			if(j==i)
			{
				s+=1;
			}
		}
		if(key==1)
		{
			max+=s;
			key=0;
			s=0;
		}
	}
	if(max>s6)
	{
		t=s6;
	}else
	{
		t=max;
	}
	for(i=t;i>=1;i--)
	{
		if(max%i==0&&s6%i==0)
		{
			max=max/i;
			s6=s6/i;
			break;
		}
	}
	printf("%d / %d\n",max,s6);
	return 0;
}


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值