1. 程式人生 > >小魚的航程

小魚的航程

bsp amp 一個 unsigned sca nbsp 兩個 假設 下午

題目描述

有一只小魚,它上午遊泳150公裏,下午遊泳100公裏,晚上和周末都休息(實行雙休日),假設從周x(1<=x<=7)開始算起,請問這樣過了n天以後,小魚一共累計遊泳了多少公裏呢?

輸入輸出格式

輸入格式:

輸入兩個整數x,n(表示從周x算起,經過n天,n在long int範圍內)。

輸出格式:

輸出一個整數,表示小魚累計遊泳了多少公裏。

輸入:3 10 輸出:2000

解法1:很好的if...else用法

#include<cstdio>
using namespace std;
int main()
{
    int x;
    unsigned long long
n,sum=0; //題目的坑 按題目要求做 scanf("%d %llu",&x,&n); for(int i=0;i<n;i++){ //循環次數 if(x!=6&&x!=7) sum+=250; if(x==7) x=1; else x++; } printf("%llu",sum); }

解法2:巧用數組來代表各個位置的值。

#include <cstdio>
using namespace
std; #define N 7 int main(){ int a[N]={0,250,250,250,250,250,0},x; unsigned long long n,s=0; scanf("%d%llu",&x,&n); for(unsigned long long i=1;i<=n;i++){ x=x%7; s+=a[x]; x++; } printf("%llu",s); }

小魚的航程