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

如何建微网站广州信息流推广公司

如何建微网站,广州信息流推广公司,营销型网站管理方案,郑州网站建设汉狮文章目录 顺子日期问题描述答案:14字符串解题CC语言指针C语言函数 数组解题 顺子日期 问题描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 小明特别喜欢顺子。顺子指的就是连续的三个数字:123、…

文章目录

  • 顺子日期
    • 问题描述
    • 答案:14
    • 字符串解题
      • C++
      • C语言
        • 指针
        • C语言函数
    • 数组解题

顺子日期

问题描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
小明特别喜欢顺子。顺子指的就是连续的三个数字:123、456 等。顺子日期指的就是在日期的 yyyymmdd 表示法中,存在任意连续的三位数是一个顺子的日期。例如 20220123 就是一个顺子日期,因为它出现了一个顺子:123; 而 20221023 则不是一个顺子日期,它一个顺子也没有。小明想知道在整个 2022 年份中,一共有多少个顺子日期?

答案:14

字符串解题

解题思路:枚举 2022 年所有的日期,然后判断是否存在顺子即可。
本题的顺子为顺序的三位数,包括 012,123,234,345,456,567,678,789。由于是 2022 年的日期,顺子只可能是 012 和 123,其余顺子不可能出现,因为其余均为非法日期。
最终只需枚举月、日,然后 check 一下每个日期中是否存在上述顺子即可。

C++

#include<iostream>
#include<string>
using namespace std;//to_string()代码原理 
//string To_string(int n)
//{
//	string s;
//	while(n!=0)
//	{
//		s+=n%10+'0';
//		n/=10;
//	}
//	reverse(s.begin(),s.end());
//	return s;
//}bool cheak(int year,int month,int day)
{string str=to_string(year);if(month<10) str+='0';str+=to_string(month);if(day<10) str+='0';str+=to_string(day);return (str.find("012")!=str.npos)||(str.find("123")!=str.npos);//等同于str.find("012")!=-1
}int main()
{int year=2022;int i,j;int ans=0;int months[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};for(i=1;i<=12;i++){for(j=1;j<=months[i];j++){if(cheak(year,i,j)==true){ans++;}}}cout<<ans<<endl;return 0;
}

C语言

指针
#include <stdio.h>
#include <stdlib.h>char str[8];// void reverse(char* left,char* right)//将字符串倒过来 
{while(left<right){char tmp=*left;*left=*right;*right=tmp;left++;right--;}
}void to_string(long int num)//将num变为字符串 
{int i=0;while(num!=0){str[i++]=num%10+'0';num=num/10;}reverse(str,str+8-1);
//  puts(str); 
}int fun(char* str,char* arr)//找字符串函数 
{int flag=0;//flag=3说明找到了 while(*str!=0){if(*str==*arr){arr++;flag++;}else{str=str-flag;//退回到原来的那一位,然后下面会str++进入到下一位 /*         20220112下标01234566-2=4    4++=5*/arr=arr-flag;flag=0;}if(flag==3)// {return 1;}str++;}return 0;
}int check(int year,int month,int day)
{long int num=year*10000+month*100+day;to_string(num);if(fun(str,"012")==1||fun(str,"123")==1){return 1;}return 0;
}int main()
{int year=2022;int manth[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};int i,j;int sum=0;for(i=1;i<=12;i++){for(j=1;j<=manth[i];j++){if(check(year,i,j)==1){sum++;}}}printf("%d",sum);return 0;
}
C语言函数
#include<stdio.h>
#include<string.h>
int main()
{char a[8];int count=0;int months[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};for(int i=1;i<=12;i++){for(int j=1;j<=months[i];j++){long long sum=2022*10000+i*100+j;sprintf(a,"%lld",sum);if(strstr(a,"012")!=NULL||strstr(a,"123")!=NULL)count++;}}printf("%d",count);return 0;}

数组解题

思路:数组的前四个已经确定为2022,然后枚举日期合法性,将日期存入数组中,判断第5,第6,第7个元素是否满足+1,判断第6,第7,第8个元素是否满足+1即可

#include<stdio.h>int main()
{int a[8]={2,0,2,2};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",count);return 0;
}
http://www.hkea.cn/news/974181/

相关文章:

  • 为什么要进行网站备案佛山市人民政府门户网站
  • 摄影网站开发背景百度app交易平台
  • 吉林网站建设石家庄百度快照优化排名
  • 大学生网站开发总结报告app推广接单发布平台
  • 自己做的网站怎么推广seo顾问培训
  • 怎么做业务网站百度搜索提交入口
  • 网页设计网站图片西安百度推广运营公司
  • 济南网站开发推广网络服务包括
  • 五星级酒店网站建设关键词歌词表达的意思
  • 浙江高端建设网站网站关键词如何优化
  • 2017网站开发工程师五合一网站建设
  • 学编程的孩子有什么好处seo网站诊断文档案例
  • 广州中新知识城开发建设网站无锡百姓网推广
  • 宝鸡做网站费用关键词你们懂的
  • wordpress 仿站 教程百度竞价点击一次多少钱
  • 做h的游戏 迅雷下载网站百度推广管家
  • 营销型网站建设的目的外贸网站平台都有哪些 免费的
  • 广东做网站公司广州从化发布
  • 能发外链的网站国际新闻今天最新消息
  • 做软件的网站关键词优化快速排名
  • 网站建设与管理简介网站链接交易
  • 英文网站建设教程网盘资源搜索神器
  • 做旅游网站的引言最新网络推广平台
  • 服务器上给网站做301跳转企业网站注册
  • 网站建设好做吗乐事薯片软文推广
  • wordpress 年月归档如何优化培训体系
  • 威海高区建设局网站长春做网络优化的公司
  • 安平做网站百度一下首页百度一下知道
  • 苏州建设网站市政中标项目如何做推广引流赚钱
  • 17网站一起做网店怎么下单来宾网站seo