1.兄弟俩骑车郊游,弟弟先出发,每分钟X米,M分钟后,哥哥带一条狗出发。以每分钟Y米的速度去追弟弟,而狗则以每分钟Z米的速度向弟弟跑去,追上弟弟后又立即返回,直到哥哥追上弟弟时,狗跑了多少米?
#include <stdio.h>
#include <stdlib.h>
int main()
{
int t,i,j,k;
int m,n;
float a,b,c,d;
scanf("%d",&t);
for(i=0;i<t;i++){
scanf("%f %f %f %f",&a,&b,&c,&d); // a时间,b弟,c哥,d狗
printf("%.2f\n",(a*b)/(c-b)*d);
}
}
思路:在哥哥追上弟弟前,狗是一直在奔跑的,所以狗跑的路程用 时间*速度 计算。
2.每组测试样例一行,首先一个号码A,中间一个或多个空格,然后一个符号( / 或者 % ),然后又是空格,后面又是一个号码B,A可能会很长,B是一个int范围的数。
#include<stdio.h>
#include<string.h>
#define LL long long
#define N 100000
int main()
{
LL i,x,b,k,ll,c[N];
char s[N],ss[3];
while(~scanf("%s%s%lld",s,ss,&b))
{
int flag = -1;
if(strcmp(ss,"/")==0) flag = 0;
else flag = 1;
x=0;ll=0;
for(i=0; s[i]; i++)
{
x=x*10+s[i]-'0';
c[ll++]=x/b;
x=x%b;
}
if(flag == 0)
{
k=0;
for(i=0; i<ll; i++)
{
if(c[i])
k=1;
if(k)
printf("%lld",c[i]);
}
if(k == 0)
printf("0");
printf("\n");
}
else
printf("%lld\n",x);
}
return 0;
}