题目
描述
有一只小鱼,它平日每天游泳 250 公里,周末休息(实行双休日),假设从周 x(1≤x≤7) 开始算起,过了 n(n≤10^6) 天以后,小鱼一共累计游泳了多少公里呢?
输入格式
输入两个整数x,n(表示从周x算起,经过n天)。
输出格式
输出一个整数,表示小鱼累计游泳了多少公里。
输入输出样例
输入 | 输出 |
---|---|
3 10 |
2000 |
解答
解法一
循环n天加起来
#include<iostream>
using namespace std;
int x,n,all;
int main()
{
all=0;
cin>>x>>n;
for(int i=0;i<n;i++)
{
if(x<6)
all+=250;
x++;
if(x==8)
x=1;
}
cout<<all;
return 0;
}
解法二
判断有几天乘起来
思路1:
#include<iostream>
using namespace std;
int x,n,c;
int main()
{
cin>>x>>n;
c=(n/7)*5;
if(x>6 && n%7>0)
c+=n%7-1;
else if(x>5 && n%7>1)
c+=n%7-2;
else if(x>4 && n%7>2)
c+=n%7-2;
else if(x>3 && n%7>3)
c+=n%7-2;
else if(x>2 && n%7>4)
c+=n%7-2;
else if(x>1 && n%7>5)
c+=n%7-2;
else
c+=n%7;
cout<<c*250;
return 0;
}
思路2:
#include<iostream>
using namespace std;
int x,n,c;
int main()
{
cin>>x>>n;
c=(n/7)*5;
if(n%7 > (7-x) && x>6)
c+=n%7-1;
else if(n%7 > (7-x))
c+=n%7-2;
else
c+=n%7;
cout<<c*250;
return 0;
}