当前位置: 首页 > news >正文

【第13届蓝桥杯C/C++B组省赛】顺子日期

答案:14

1.数组办法解决

思路:前四个元素已经确定,分别枚举其他元素的合法性

#include <stdio.h>
int main()
{
	int a[8] = {2,0,2,0,0,0,0,0};
	int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
	int i,j;
	int count = 0;
	for(i = 1;i <= 12;++i)
	{
		a[4] = i / 10;
		a[5] = i % 10;
		for(j = 1;j <= month[i];++j)
		{
			a[6] = j / 10;
			a[7] = j % 10;
			if((a[4]+1==a[5] && a[5]+1==a[6]) || (a[5]+1==a[6] && a[6]+1==a[7]))
			{
				count++;
			}
		}
	}
	printf("%d\n",count);
	return 0;
}

2.函数

思路:将每个简单功能封装成函数,提高代码复用性

#include<stdio.h>
int is_straight_number(int a,int b,int c)
{
	return (b == a + 1) && (c == b + 1);
}

int is_straight_date(int year,int month,int days)
{
  int date = year * 10000 + month * 100 + days;
  int first = (year * 10000000) % 10;
  int second = (year * 1000000) % 10;
  int third = (year * 100000) % 10;
  int fourth = (year * 10000) % 10;
  int fifth = (year * 1000) % 10;
  int sixth = (year * 100) % 10;
  int seventh = (year * 10) % 10;
  int eighth = year % 10;

  if(
    is_s_number(first,second,third) || 
    is_s_number(second,third,fourth)||
    is_s_number(third,fourth,fifth) || 
    is_s_number(fourth,fifth,sixth)||
    is_s_number(fifth,sixth,seventh)||
    is_s_number(sixth,seventh,eighth)
  )
  {
    return 1;
  }
  return 0;
}
int get_days_in_month(int month) 
{
  if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) 
  {
    return 31;
  }
  if (month == 4 || month == 6 || month == 9 || month == 11) 
  {
    return 30;
  }
  return 28;  
}
int main(int argc, char *argv[])
{
  int ans = 0;
  int month;
  int day;
  for(month = 1;month <= 12;++month)
  {
    int days = get_days_in_month(month);
    for(day = 1;day <= days;++day)
    {
      if(is_s_date(2022,month,day))
      {
        ans++;
      }
    }
  }
  printf("%d\n",ans);
  return 0;
}

相关文章:

  • Brainstorm绘制功能连接图(matlab)
  • Leetcode—242. 有效的字母异位词(字符串算法)
  • 国内 npm 镜像源推荐
  • TCP/IP 协议族详细知识点清单
  • 计算机网络--传输层(1)
  • 如何在MyBatis-Plus中优雅实现复杂查询:结合`JSON_CONTAINS`与动态条件构建
  • RAG优化:python从零实现query转换增强技术
  • 从零构建大语言模型全栈开发指南:第二部分:模型架构设计与实现-2.1.3前馈网络(FFN)与激活函数(GELU)优化
  • 什么是docker-compose,和Dockerfile的区别
  • 【高项】信息系统项目管理师(十)项目风险管理【5分】
  • hn航空app hnairSign unidbg 整合Springboot
  • 深入浅出理解Android系统中的SeLinux
  • CCF-CSP第13次认证第一题——跳一跳【简单】
  • 使用Redis实现分布式锁的技术详解
  • 嵌入式硬件工程师从小白到入门-速通版(一)
  • excel 列单元格合并(合并列相同行)
  • STM32 - 在机器人、自动化领域,LL库相比HAL优势明显
  • 卫宁健康学习——住院医生站管理系统
  • 索引失效类型和原因--1.对索引列使用函数
  • Python第六章10:字符串操作练习题
  • 马上评|送外卖不再要健康证,为骑手减负的务实之举
  • 四川省政府党组成员、副省长、省公安厅厅长叶寒冰被查
  • 林诗栋/蒯曼不敌日本组合,无缘晋级世乒赛混双四强
  • 近代中国商业航空的兴起——基于“竺可桢日记”的考察
  • 贵州已设立省地质矿产局、省地质矿产开发院
  • 演员辛柏青发讣告,妻子朱媛媛去世