//第二届顶嵌杯初赛 题目 POJ
//A题
#include<stdio.h>
int a3,b3;
void Reduce()
{
while(a3%2==0 && b3%2==0)
{ a3/=2; b3/=2; }
while(a3%3==0 && b3%3==0)
{ a3/=3; b3/=3; }
while(a3%5==0 && b3%5==0)
{ a3/=5; b3/=5; }
while(a3%7==0 && b3%7==0)
{ a3/=7; b3/=7; }
}
int main()
{
int a1,b1,a2,b2;
char option;
char inputStr[10];
while(scanf("%s",&inputStr)!=EOF)
{
a1=inputStr[0]-'0';
b1=inputStr[2]-'0';
option=inputStr[3];
a2=inputStr[4]-'0';
b2=inputStr[6]-'0';
b3=b1*b2;
if(option=='+')
a3=a1*b2+a2*b1;
else
a3=a1*b2-a2*b1;
if(a3==0)
printf("0\n");
else
{
Reduce();
if(b3!=1)
printf("%d/%d\n",a3,b3);
else
printf("%d\n",a3);
}
}
return 0;
}
//B题
#include<stdio.h>
int main()
{
int a,b;
while(scanf("%d %d",&a,&b)!=EOF)
{
printf("%d\n",a%b);
}
return 0;
}
//C题
#include<stdio.h>
#include<string.h>
int main()
{
char inputStr[1005]={0};
char out[1005]={0};
int len,i,j;
while(fgets(inputStr, 1000, stdin)!=0) //读入一行(包含空格)
{
i=0;j=0;
len=strlen(inputStr);
while(i<len-1) //由于使用fgets会把'\n'保存在串尾中,所以不要最后一位
{
if(inputStr[i]=='y' && i+2<len)
{
if(inputStr[i+1]=='o' && inputStr[i+2]=='u')
{
out[j++]='w';
out[j++]='e';
i=i+3;
}
else
{
out[j++]=inputStr[i++];
}
}
else
{
out[j++]=inputStr[i++];
}
}
out[j]='\0';
printf("%s\n",out);
}
return 0;
}
//D题
//高精度题目,用上longlong,再分三段来处理
#include<stdio.h>
#include<string.h>
#define WeiNum 1000000000000
long long A[105][3];
int status[105];
void Calcu(int n)
{
A[n][0]=A[n-1][0]+A[n-2][0]+A[n-3][0];
if(A[n][0]/WeiNum>0)
{
A[n][1]=A[n][0]/WeiNum;
A[n][0]%=WeiNum;
}
if(A[n-1][1]>0)
{
A[n][1]+=A[n-1][1]+A[n-2][1]+A[n-3][1];
if(A[n][1]/WeiNum>0)
{
A[n][2]=A[n][1]/WeiNum;
A[n][1]%=WeiNum;
}
if(A[n-1][2]>0)
A[n][2]+=A[n-1][2]+A[n-2][2]+A[n-3][2];
}
}
void fun(int n)
{
if(n==0 || n==1 || n==2)
;
else if(status[n]==0)
{
fun(n-3);
fun(n-2);
fun(n-1);
Calcu(n);
status[n]=1;
}
return ;
}
int main()
{
int a0,a1,a2;
int i;
long long temp;
int count;
while(scanf("%d %d %d",&a0,&a1,&a2)!=EOF)
{
memset(status,0,sizeof(status));
memset(A,0,sizeof(A));
A[0][0]=a0;
A[1][0]=a1;
A[2][0]=a2;
fun(99);
if(A[99][2]>0)
printf("%lld",A[99][2]);
if(A[99][1]>0)
{
if(A[99][2]>0)
{
count=0;
temp=A[99][1];
while(temp>0)
{
temp/=10;
count++;
}
for(i=0;i<12-count;i++)
printf("0");
}
printf("%lld",A[99][1]);
}
if(A[99][1]>0 || A[99][2]>0)
{
count=0;
temp=A[99][0];
while(temp>0)
{
temp/=10;
count++;
}
for(i=0;i<12-count;i++)
printf("0");
}
printf("%lld\n",A[99][0]);
}
return 0;
}