day21:求n天后的日期(中)、菱形输出(中)、三角形的个数(中)

【信息科学与工程学】【数据科学】数据科学领域-第三篇 数学基础04 集合论02 编号类型概念类别概念名称数学定义/描述数学表示性质特征重要特例相关理论问题的数学分析参数列表及参数数值范围关联知识1基础集合论本体集合若干确定的、互不相同的对象的总体A,B,…确定性、互异性、无序性∅,N,RZFC 公理系元素归属判定 x∈A势 ∥A∥∈{finite}∪[ℵ0​,+∞)朴素集合论→公理化2基础集合运算并/交/差/补按逻辑联结词定义的集合操作A∪B,A∩B,A∖B交换律、结合律、分配律、De MorganA∪∅=A布尔代数多集合推广 ⋃i∈I​Ai​I为指标集,可数/不可数测度论3基础构造幂 阅读详情

求n天后的日期

问题描述

写一个函数,传入年月日,计算它的第二天,并返回该日期。由用户输入年月日和一个n值,使用前述函数,计算该日期加n天的日期为多少。

个人总结

1. 传入的年月日,天数并入n种,从month开始遍历,days数组的下标是month-1,但是要判断本年和下一年是否是闰年。

2. 当月份是12月时,若day_sum减去12月天数后<0,则停留在这个月,若>0,则year++并且i归零

3. 要注意次序问题,i归零会多减一次。

#include <iostream>
//#include <vector>
//#include <string>
//#include <algorithm>
//#include <cmath>
//#include <iomanip>
//#include <set>
//#include <sstream>
//#include <bits/stdc++.h> 
using namespace std;


int main(){
	int year,month,day,n;
	while(cin >> year >> month >> day >> n){
		int days[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
		if((year % 4 == 0 && year % 100 != 0)|| year % 400 == 0){
			days[1] = 29;
		}
		else{
			days[1] = 28;
		}
		
		int day_sum = day + n;
		
		int last_month;
		for(int i = month - 1; i < 12 ;i++){
			
			if(day_sum - days[i] <= 0){
				last_month = i+1;
				break;
			}
			else if((day_sum - days[i] > 0) && i == 11){
				day_sum -= days[i];
				year ++;
				i = -1;
				if((year % 4 == 0 && year % 100 != 0)|| year % 400 == 0){
				days[1] = 29;
				}
				else{
					days[1] = 28;
				}
				
			} 
			else{
				day_sum -= days[i];
			}
			
		}
		 
				
		cout << year << " " << last_month << " " << day_sum << endl;
		
		
		
	}
	
	return 0;
}

菱形输出

问题描述

明明这次又碰到问题了:

给定一个正整数N,明明的爸爸让他输出一个以Z开始的菱形,以后依次为Y,X…,

比如当N等于1的时候输出图形:

Z

当N等于2的时候,输出图形:(Y前没有空格,Z、X和W前一个空格)

  Z

Y X

 W

当N等于3的时候,输出图形(Z前两个空格,Y、X前一个空格,W前没有空格......):

   Z

 Y X

W   V

 U T

   S

明明发现当N很大的时候就不是很容易了,所以找到了你,希望你编写一个程序帮助他

明明的问题可以归结为:输入一个正整数N,输出一个以Z开始的菱形,以后依次为Y,X…。

请尝试定义函数,该函数的功能是输出以上图形的一行。

个人总结

1. 字母是Z,单字符串,不能用string存储,可以用char存储

2. 存储在char中的字符是ascii码的形式,则直接将字符串-1可以获得上一个紧挨着的字符

3. 空格的输出需要多熟练掌握

#include <iostream>
//#include <vector>
//#include <string>
//#include <algorithm>
//#include <cmath>
//#include <iomanip>
//#include <set>
//#include <sstream>
//#include <bits/stdc++.h> 
using namespace std;


int main(){
	int n;
	while(cin >> n){
		char s = 'Z';
		bool first = true;
		int k1 = 1;
		for(int j = n ; j >= 1; j--){
			for(int i = j-1; i >= 1 ; i--){
			cout << " ";
			}
		
		
		if(first){
			cout << s;
			s = s-1;
			first = false;
		}
		else
		{
			cout << s;
			s = s-1;
			for(int q = 1; q <= 2*k1 - 1;q++){
				cout << " ";
			}
			cout << s;
			s = s-1;
			k1++;
			
		}
			
			cout << endl;
		}
		
		
		int k2 = k1 - 2;
		bool nolast = true;
		if(k2 == 0){
			nolast = false;
		}
		for(int j = 1;j <= n-1 ; j++){
			for(int i = j; i >= 1 ; i--){
				cout << " ";
			}
			
			if(nolast){
				cout << s;
				s = s-1;
				for(int q = 2*k2-1; q >= 1;q--){
				cout << " ";
				}
				cout << s;
				s = s-1;
				k2--;
				if(k2 == 0){
					nolast = false;
				}
			}else{
				cout << s;
			}
			
			
			cout << endl;
			
		}
		cout << endl;
		
	}
	
	return 0;
}

三角形的个数

问题描述

明明的爸爸常用玩游戏的方法来激发明明对几何学的兴趣。这天明明的爸爸和明明又玩起了有关三角形的游戏。

明明爸爸对明明说:“我们能不能构造一个周长为15的三角形?” “太简单了,”明明说道:“三条边长都是5的三角形,它的周长不就是15吗?” “明明真聪明,算得真快。”明明爸爸接着说:“可是,我不想要三条边都相等的三角形哪!” 明明大眼睛一转,说道:“那也好办啊,我只要对这个等边三角形的一条边减去一个数,再把这个数加到另一条边上就可以得到一个新的周长为15的三角形。例如,在第一条边上减去1,在第二条边上加上1,这样不就可以得到一个周长为15的新的三角形了吗?” “哇,明明太聪明了”爸爸称赞道。“对,如果把第一条边上减去的1加到第三条边上去不就又可以得到周长为15的另外一个新三角形了吗?”爸爸模仿着明明的方法和语气。 “不对呀,爸爸。你构造的三角形和我构造的三角形是同样的三角形。爸爸你看,我的三角形三条边分别长为4、6、5,而你的三角形三条边分别长为4、5、6,将三条边按其边长排序后都得到4、5、6,所以它们是同一个三角形,不是两个不同的三角形。” “啊,还是明明聪明。那还有没有其他周长为15的三角形吗?” “当然有啦。三条边边长分别为4、4、7的三角形,它的周长就是15,不过你可能不喜欢它,因为它有两条边的边长相等。” 明明和爸爸玩了一下午这样的三角形游戏,明明一共又构造了另外两个他认为他爸爸喜欢的三角形,即边长分别为2、6、7的三角形和边长分别为3、5、7的三角形。

晚上,明明躺在床上还在思考:如果周长不是15,而是90,那么爸爸喜欢的三角形有多少个呢?

明明的问题可以归结为:根据一个正整数n(3 ≤ n ≤ 100),要求统计出同时满足下列条件的三角形的个数:

  1. 边长都是整数。

  2. 周长为n。

  3. 边长两两不相等。

之所以有上述第一个条件,那是因为明明只知道正整数,没有学过分数和实数,因此他构造出的三角形的边长均为正整数。 请你写一个程序来帮助明明计算出他认为他爸爸喜欢的三角形的个数。

个人总结

1. 暴力循环遍历即可,三角形的成型条件是,两边之和大于第三边,题设条件三边不相等

#include <iostream>
//#include <vector>
//#include <string>
//#include <algorithm>
//#include <cmath>
//#include <iomanip>
//#include <set>
//#include <sstream>
//#include <bits/stdc++.h> 
using namespace std;


int main(){
	int n;
	while(cin >> n){
		int a,b,c;
		int lenth = n;	
		int count = 0;
		for(a = 1 ; a <= lenth; a++){
			for(b = 1; b <= lenth - a; b ++){
				c = lenth - a - b;
				if((a != b) && (b != c) &&(c != a) && (a + b > c) && ( b + c > a)&&( a + c > b)){
					count ++;
				}
			}
		
				
		
		
		
	}
	cout << count/6 << endl;
	
	}
	return 0;
}	

计算机英语翻译

1.数据分析引擎

同样的在19世纪,英国数学家和发明家charles babbage解决了(提出了)现代数据计算器的法则。他发明了许多机器,比如区别引擎(差分机),它被设计去解决复杂的数学问题。许多历史学家考虑babbage和他的同事,数学家Augusta Ada Byron,视为现代数据计算机领域真正的先锋。其中一个babbage的发明,数据引擎,有许多现代计算机的特点。它有一个一种以打孔纸片形式输入的输入流,一个“存储器”用于存储数据,一个“mill”去arithmetic操作(用于执行算术运算的“运算单元”),和一个打印器可以做一个长期的记录。Babbage没能成功的将想法付诸实践,但是它可能已经变成那个时期的技术难题(但是实现这一想法是完全可能的)。

work out 提出了

conceive v.想出,提出;怀孕

mill n.磨坊

单词打卡

5个4000比特大状态置换算法的设计与分析 下面是 5 个概念性、实验性的 4000 位可逆置换设计。它们都保证是双射,但未经过密码分析,不可直接用于生产系统。风格分别覆盖:三维 SPN、Feistel、可逆元胞自动机、ARX、宽轨迹/Keccak 式结构。 这 5 个设计分别代表了 SPN、Feistel、元胞自动机、ARX、宽轨迹 Keccak 五种不同风格,覆盖了主流大状态置换的构造思路。再次强调:它们只是实验性概念,若要用于实际协议,必须经过严格安全性分析。 阅读详情

相关推荐

从Excel到‘一张图’办案:手把手教你用AbutionGraph构建公安经侦知识图谱(含数据建模避坑指南)

本文详细介绍了如何利用AbutionGraph时序图数仓技术,将公安经侦领域的Excel、银行流水等碎片化数据转化为可交互的知识图谱。通过数据清洗、实体关系模型设计、时序数据处理等步骤,实现高效智能分析,提升办案效率。特别包含数据建模避坑指南和实战案例,助力公安金融案件侦破。

weixin_33702545的博客 342

OJ 65 66 67

明明大眼睛一转,说道:“那也好办啊,我只要对这个等边三角形的一条边减去一个数,再把这个数加到另一条边上就可以得到一个新的周长为15的三角形。爸爸你看,我的三角形三条边分别长为4、6、5,而你的三角形三条边分别长为4、5、6,将三条边按其边长排序后都得到4、5、6,所以它们是同一个三角形,不是两个不同的三角形。你写的程序需要从标准输入设备(通常为键盘)中读入多组测试数据,每组测试数据仅占一行,每行仅包括一个正整数n(3 ≤ n ≤ 100),代表需要被统计的三角形的周长,n的前后都没有任何空格。

2301_78877055的博客 393

Excel COUNTIF函数精确统计全解析:从模糊匹配到精准计数

在数据处理与办公自动化领域,条件计数是数据分析的基础操作,其核心原理在于对特定范围内满足设定条件的单元格进行识别与汇总。Excel中的COUNTIF函数是实现这一功能的常用工具,它通过文本匹配逻辑与通配符机制来执行条件判断。然而,其默认的模糊匹配行为常导致统计结果偏离预期,这正是精确统计的技术价值所在——确保数据汇总的准确性与可靠性,直接影响业务报告、薪酬核算、销售分析等应用场景的决策质量。本文聚焦COUNTIF函数的精确匹配技巧,深入剖析通配符(如星号*和问号?)的转义使用(通过波浪号~),并针对大小写敏

weixin_29040367的博客 353

2.2完成65、66、67

爸爸你看,我的三角形三条边分别长为4、6、5,而你的三角形三条边分别长为4、5、6,将三条边按其边长排序后都得到4、5、6,所以它们是同一个三角形,不是两个不同的三角形。” 明明和爸爸玩了一下午这样的三角形游戏,明明一共又构造了另外两个他认为他爸爸喜欢的三角形,即边长分别为2、6、7的三角形和边长分别为3、5、7的三角形。注意该定义明确要求时间上的控制和空间上的关联,这意味着需要高度一致的实时相关虚拟现实信息.这样的指令表明AR设备的用户至少会经历一些互动的控制,并且电脑生成的AR增强仍然和环境高度相关。

ab151517的博客 605

Nuvoton OpenTitan开源安全芯片技术解析与应用

硬件安全模块(HSM)作为可信计算基的核心组件,其设计透明度和可验证性正成为行业焦点。RISC-V架构凭借开源特性,为构建可审计的安全芯片提供了新范式。OpenTitan项目通过开放Verilog源码和形式化证明,实现了从物理不可克隆函数(PUF)到分层安全启动的全栈透明。该方案在lowRISC Voyager开发板上实测显示,安全启动时间小于200ms,性能损耗仅7%,显著优于传统黑盒方案。目前该技术已应用于Chromebook和数据中心,其40nm工艺版本更将功耗降至5μA待机水平,为物联网和边缘计算提

weixin_36303807的博客 398

手把手教你学PCIE(10.5)--PCIE故障排除方法的分步排查法介绍

通过以上分步排查法,你可以系统地诊断和解决 PCIe 设备的故障。每个步骤都有助于逐步缩小问题范围,最终找到并解决问题。

MHD0815的博客 1873

2.23打卡day10

要求写一个将日期增加一天的函数,函数中先判断闰年,确定每个月的天数后,将day+1,day+1可能导致month+1,month+1也可能导致year+1,逐一判断即可。主要函数的参数要加引用&,调用时直接修改原变量。重复调用n次即得出n天后的日期为多少。//判断是否为闰年//每月的天数//将日期增加一天(引用传递,直接修改原变量)29:28;day++;day=1;month++;month=1;year++;++i) {

qq_66225337的博客 589

Python爬虫实战:爬取Bilibili和YouTube视频、弹幕和评论

随着视频内容平台的爆发式增长,视频网站成为了人们获取信息、娱乐和知识的重要渠道。在这些平台上,视频、弹幕和评论数据可以为我们提供重要的信息,帮助我们了解用户的行为、视频的受欢迎程度以及内容的互动情况。本篇文章将带你实现一个Python爬虫,用来爬取Bilibili和YouTube上的视频、弹幕、评论等数据。我们将详细介绍爬虫的实现过程,使用最新的Python技术,并且会提供完整的代码。Bilibili网站提供了多种方式来获取视频数据,最直接的方式是通过其开放的API接口来获取视频、弹幕和评论等数据。

2201_76125261的博客 1775

C++|【机试】26.3.8 t65-t67

【法一】传统写法--好想--三重嵌套循环a<n;a++){b<n;b++){c<n;c++)【法二】 循环边界优化三角形边长需要满足:1. 周长为n:a + b + c = n2. 边长两两不相等:a < b < c3. 三角形不等式:a + b > c由 a < b < c 和 a + b + c = n 可得:所以 a + 2b < n且 c = n - a - b由 a + b > c 可得:a <= n/3;a++) {

m0_74149727的博客 800

【零基础入门unity游戏开发——unity3D篇】unity CharacterController 3D角色控制器最详细的使用介绍,并实现俯视角、第三人称角色控制(附项目源码)

【unity小技巧】unity最完美的CharacterController 3d角色控制器,实现移动、跳跃、下蹲、奔跑、上下坡、物理碰撞效果,复制粘贴即用但是我发现很多人还是不理解,都跑来私信问我,所以决定重新做一个更加详细且简单控制器,主要是实现俯视角和第三人称角色控制。添加一个胶囊体,添加Character Controller组件,记得删除Capsule Collider组件,因为Character Controller自带了碰撞,所以不需要Character Controller参数介绍。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 5022

从零手搓大模型(一)文本如何变成 LLM 的输入

本文介绍了从原始文本到LLM输入向量的完整处理流程。主要内容包括: 文本预处理:通过正则表达式将原始文本分割成token列表,处理标点和空格。 词表构建:创建token到ID的映射字典(vocabulary),这是文本数字化的关键步骤。 简单tokenizer实现:封装了编码(encode)和解码(decode)功能,完成文本与token ID的相互转换。 处理流程:原始文本 → 分词 → token ID → 嵌入表示 → 最终输入向量。 数据形状变化:从字符串逐步转换为(batch_size, cont

echo的博客 998

复试准备day14

内核的另一个组件由一组设备驱动程序组成,这些设备驱动程序是与控制器(有时也直接与外围设备)通信的软件单元,用于对连接到机器上的外围设备执行操作。每个设备驱动程序都是为特定类型的设备(如打印机、磁盘驱动器或显示器)专门设计的,并将通用请求转换为分配给该驱动程序的设备所需的更具技术性的操作步骤。在这种情况下,执行当前任务的程序会被放置在主内存的预定位置,执行完成后,再被执行下一个任务的程序替换。n的值不超过2000。给定一个正整数N,明明的爸爸让他输出一个以Z开始的菱形,以后依次为Y,X…

m0_73976418的博客 223

PyTorch深度学习实战(3)——使用PyTorch构建神经网络

PyTorch 是一个用于构建深度神经网络的库,具有灵活性和可扩展性,可以轻松自定义模型。在本节中,我们将使用 PyTorch 库构建神经网络,利用张量对象操作和梯度值计算更新网络权重,并利用 Sequential 类简化网络构建过程,最后还介绍了如何使用 save、load 方法保存和加载模型,以节省模型训练时间。

盼小辉丶的博客 8万+

东华oj基础65-68题

爸爸你看,我的三角形三条边分别长为4、6、5,而你的三角形三条边分别长为4、5、6,将三条边按其边长排序后都得到4、5、6,所以它们是同一个三角形,不是两个不同的三角形。” “啊,还是明明聪明。于是明明的爸爸就问明明:“明明,你现在知道了什么是素数,那我现在给你一个整数区间,你能告诉我在这个区间里,一共有多少个素数吗?你写的程序需要从标准输入设备(通常为键盘)中读入多组测试数据,每组测试数据仅占一行,每行仅包括一个正整数n(3 ≤ n ≤ 100),代表需要被统计的三角形的周长,n的前后都没有任何空格。

2503_91751263的博客 805

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

3.6 64~74 翻译三段 单词100

作者: Turbo时间限制: 2s章节: 函数最近两个题目都运用到了函数的思想这一题用到了三个函数1.判断年份是否为闰年2.给出一个日期以后 计算下一天的日期为多少如果当前天数小于当前月份的天数 则天数直接加1如果不是 则将天数置为1号 月份加1 同时判断月份是否大于12 若大于 则月份置为1月 年份加一3.给出一个日期 计算n天后的日期为多少将函数2循环n次即可注意要改变函数内给出的变量时 不要忘记加引用符号&注意这里暴力解的判断 j是从i+1开始的 最后一条边用总长度减去两条边即可。

qwc2232041380的博客 360

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

3.6打卡

在计算偶数拆分成两个素数的组合时,只用遍历到i<n/2即可。

triple_pg的博客 336

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

2026.3.7oj总结

1.求n天后的日期。

m0_74908714的博客 345

东华复试OJ

东华复试OJ(61-70题)

qq_52942020的博客 324

Javascript之条件、循环、函数、递归、数组、字符串、Date练习题

1.判断三个数的大小,并从小到大排列 var num1 = +prompt("请输入数字:"); var num2 = +prompt("请输入数字:"); var num3 = +prompt("请输入数字:"); if(num1 > num2 && num1 > num3){ if(num2 > num3){ alert(num3 + "," + num...

weixin_45779841的博客 2964

【Java入门到精通】*基础篇

Java入门教程摘要(1-6期) 本系列从零讲解Java,基于Java 8 LTS版本。 Java历史与特性:1995年Sun公司发布,以跨平台、面向对象为核心优势,应用于后端、安卓、大数据等领域。 跨平台原理:通过JVM将字节码转换为机器码,实现"一次编写,到处运行"。 环境组件:JDK(开发工具包)⊃ JRE(运行环境)⊃ JVM(虚拟机),开发需安装JDK。 安装配置:提供Windows/Mac的JDK安装指南,强调路径无中文/空格。 环境变量:设置JAVA_HOME指向JDK路径,Path添加bin

2301_81248642的博客 931

机试(蓝桥杯)入门级教程

一、都要干什么呢 1.常用排序算法 2.只需要学递归、分治、贪心、动态规划 3.可以学一下STL库函数 4.编程题可以只写输入输出语句,与样例即可(因为第一个测试数据一般就是样例) 二、题目 题目描述 1.假设你有一个数组,其中第\ i i 个元素是股票在第\ i i 天的价格。 你有一次买入和卖出的机会。(只有买入了股票以后才能卖出)。请你设计一个算法来计算可以获得的最大收益。 class Solution { public: /** * * @param prices int

qq_44886213的博客 3092

视频隐私脱敏工程化:CSRT/KCF追踪算法在本地推理中的实现与边界

在短视频内容合规审查中,动态遮挡(Dynamic Masking)是高频且高耗时的环节。传统手动关键帧打码不仅效率低下,且在目标快速移动或遮挡时极易出现遮罩漂移。本文从计算机视觉工程角度,解析基于CSRT与KCF算法的目标追踪方案在视频隐私处理中的技术路径、性能权衡及落地实践。

Mysssone的博客 203

【算法拾光】链表 哈希表|K个一组翻转链表 + 两数之和

K个一组翻转链表需分段反转,借助哑节点与前驱指针维护连接,避免断链;两数之和利用哈希表实现O(1)查找,空间换时间,高效定位目标组合。前者考察链表指针操作,后者聚焦映射关系构建,均为面试高频题。

wuqingyigexiaoba的博客 311

排序算法深度笔记(下):非比较类排序的线性突破与工程边界

排序算法时间复杂度额外空间复杂度稳定性是否基于比较选择排序O(N^2)(O(1))不稳定是冒泡排序O(N^2)(O(1))稳定是插入排序O(N^2)(O(1))稳定是归并排序O(N\log N)(O(N))稳定是快速排序O(N\log N)O(log N)不稳定是堆排序O(N\log N)O(1)不稳定是计数排序(O(N + M))O(M))稳定否基数排序O(N)稳定否桶排序平均O(N) / 最坏O(N^2)

2401_87069538的博客 571

算法日常・每日刷题--<动态规划>42

本题为“不相交的线”,与最长公共子序列问题相似。使用动态规划求解:定义 dp[i][j] 表示 nums1[0:i] 与 nums2[0:j] 的最大不相交连线数。若元素相等,则继承左上值加1;否则取上方或左方最大值。最终返回 dp[m][n],即两数组的最大不相交连线数。时间复杂度 O(mn),空间复杂度 O(mn)。

2503_92261635的博客 20

C语言程序设计题|有序数组插入数字冒泡排序

题目要求将一个数插入有序数组末尾,并用冒泡排序实现整体升序。代码先将输入数存入数组最后位置,再通过双重循环进行冒泡排序,每轮将较大元素向后移动,最终输出11个升序元素。该方法虽时间复杂度为O(n²),但符合题目要求,逻辑清晰,适合初学者理解排序原理。

2301_81429079的博客 749
上一篇: day20:分拆素数和(中)、歌德巴赫猜想(中)、N的倍数(中)
下一篇: day22:素数(中)、杨辉三角(易)、矩阵问题(易)
小白blog
博客等级 码龄4年 0粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值