十三届蓝桥杯省赛

A.九进制转十进制

题目描述:将一个九进制数字转换为十进制数字。

代码:

#include<bits/stdc++.h>
using namespace std;
int main() {
    iostream::sync_with_stdio(false);
    double d=2*pow(9,0)+2*pow(9,1)+0+2*pow(9,3);
    cout<<d<<endl;
    return 0;
}

B.顺子日期

题目描述:在日期的yyyymmdd表示法中,如果存在连续的三个数字就是顺子日期,求解整个2022年份中有多少个顺子日期。

解题思路:定义一个函数判断是否存在连续的顺子,然后在主函数中遍历365天判断即可。主义基础知识,先加++和后加++的区别。考察字符串的处理。

 int dayy =++day;
        if (dayy>arr[month]) {
            day = 1;
            month++;
        }

sprintf函数解析(字符串输出函数)

代码:

#include<bits/stdc++.h>
using namespace std;
int judge(string str) {
    for (int i = 0; i < str.size() - 2; i++) {
        if (str[i + 1] == str[i] + 1 && str[i + 2] == str[i] + 2) {
            return 1;
        }
    }
    return 0;
    
}
int main() {
    iostream::sync_with_stdio(false);
    int arr[] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
    int year = 2022;
    int month = 1;
    int day = 1;
    int numbers = 0;
    for (int i = 0; i < 365; i++) {
        char str[10];
        sprintf_s(str, "%04d%02d%02d", year, month, day);
        if (judge(str))
        {
            numbers++;
            cout << str << endl;
        }
        int dayy =++day;
        if (dayy>arr[month]) {
            day = 1;
            month++;
        }
    }
    cout << numbers << endl;

    return 0;
}

C.刷题统计

看到这个题,我突然感觉有点。。。

题目描述:周一到周五每天做a道题目,周六周天每天做b道题目,计算将在第几天实现做题数目大于等于n题。

#include<bits/stdc++.h>
using namespace std;

int main()
{
   iostream::sync_with_stdio(false);
   unsigned long long a;
   unsigned long long b;
   unsigned long long n;
   cin>>a>>b>>n;
   unsigned long long sum=0;
   unsigned long long num=1;
   while(sum<n){

        if(num%7==0||(num+1)%7==0){
            sum+=b;
        }
        else{
            sum+=a;
        }
        num++;

   }
   cout<<num-1;
   return 0;
}

D.修剪灌木

#include<bits/stdc++.h>
using namespace std;

int main()
{
   int n;
   cin>>n;
   for(int i=0;i<n;i++){
    cout<<max(i,n-1-i)*2<<endl;
   }
   return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暗紫色的乔松(-_^)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值