蓝桥杯省赛b组练习

蓝桥杯2022年第十三届省赛真题b组

111
题目描述
小明决定从下周一开始努力刷题准备蓝桥杯竞赛。他计划周一至周五每天做 a 道题目,周六和周日每天做 b道题目。请你帮小明计算,按照计划他将在第几天实现做题数大于等于 n 题?
输入格式
输入一行包含三个整数 a, b 和 n.
输出格式
输出一个整数代表天数。
样例输入 10 20 99
样例输出 8
提示
对于 50% 的评测用例,1 ≤ a, b, n ≤ 106 .
对于 100% 的评测用例,1 ≤ a, b, n ≤ 1018 .

//定义为long型才能通过所以测试数据
#include
int main()
{
    long a,b,n,day;//换成int型就会有部分测试结果不对
    scanf("%ld%ld%ld",&a,&b,&n);
    long aweek=5*a+2*b;//1周可以学习几道
    long week=n/aweek; //需要学习几周
    long left=n%aweek; //剩下几道题目在day天内完成(day属于0~7)
    if(left==0)  day=0;
    else if(a*1>=left) day=1;
    else if(a*2>=left) day=2;
    else if(a*3>=left) day=3;
    else if(a*4>=left) day=4;
    else if(a*5>=left) day=5;
    else if(a*5+b>=left) day=6;
    else if(a*5+2*b>=left) day=7;
    
    printf("%ld\n",day+7*week);
    return 0;
}

题目描述
爱丽丝要完成一项修剪灌木的工作。有 N 棵灌木整齐的从左到右排成一排。爱丽丝在每天傍晚会修剪一棵灌木,让灌木的高度变为 0厘米。爱丽丝修剪灌木的顺序是从最左侧的灌木开始,每天向右修剪一棵灌木。当修剪了最右侧的灌木后,她会调转方向,下一天开始向左修剪灌木。直到修剪了最左的灌木后再次调转方向。然后如此循环往复。灌木每天从早上到傍晚会长高1 厘米,而其余时间不会长高。在第一天的早晨,所有灌木的高度都是 0 厘米。爱丽丝想知道每棵灌木最高长到多高。
输入格式 一个正整数 N ,含义如题面所述。
输出格式 输出 N 行,每行一个整数,第i行表示从左到右第 i 棵树最高能长到多高。
样例输入 3
样例输出 4 2 4
提示
对于 30% 的数据,N ≤ 10. 对于 100% 的数据,1 < N ≤ 10000.

//其实就是找规律题目,写几个出来找一下规律就可以
#include
int main()
{
    int n,i,j;
    int a[10005];
    scanf("%d",&n);
    //只需要计算一半 
    for(i=1;i<=n/2;i++)
    {
        a[i]=2*(n-i);
        printf("%d\n",a[i]);
    }
    //如果n是奇数,中间的输出一次即可 
    if(n%2!=0) 
	{
		printf("%d\n",2*(n-i));
		i++;
    }
    //对称输出另一半 
    for(j=i;j<=n;j++)
    {
        printf("%d\n",a[n+1-j]);
    }
  return 0;
}

你可能感兴趣的:(c/c++学习,蓝桥杯)