P1424 小鱼的航程(改进版) C语言 精简版及没事找事版

题目背景

原来的题目太简单,现改进让小鱼周末也休息,请已经做过重做该题。

题目描述

有一只小鱼,它平日每天游泳 250 公里,周末休息(实行双休日),假设从周 x(1\le x \le 7)x(1≤x≤7) 开始算起,过了 n(n\le 10^6)n(n≤106) 天以后,小鱼一共累计游泳了多少公里呢?

输入格式

输入两个整数x,n(表示从周x算起,经过n天)。

输出格式

输出一个整数,表示小鱼累计游泳了多少公里。

输入输出样例

输入 #1

3 10

输出 #1

2000

代码

精简版 

#include<stdio.h>
int main(){
    int ans=0,x,n;
    scanf("%d%d",&x,&n);
    x--;
    for(int i=0;i<n;i++){
        x++;
        if(x==8) x=1;
        if(x!=6&&x!=7) ans+=250;
    }
    printf("%d",ans);
    return 0;
}

没事找事版

#include<stdio.h>
int s[1000000];
int main()
{

    int a,b,n=1;
    scanf("%d%d",&a,&b);
    int i,ans=0;


    for(i=1;i<=1000000;i++)
    {
        if   ( i%7==0 || i%7==6 )
              s[i]=0;
        else s[i]=1;
    }

    for (i=a;n<=b;i++)
      {
        ans+=250*s[i];
        n++;
      }
    printf("%d",ans);
    return 0;

}

上一篇:CF1246E To Make 1 题解


下一篇:【ybtoj高效进阶 21273】铲雪问题(树形DP)