![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
泠930
这个作者很懒,什么都没留下…
展开
-
对称日
寻找对称日,也就是2021年12月2号。20211202,年为一组,日月一组,中间对称。需要考虑限制,日子最多31日,所以年的范围要注意。然后就是用开关找31和30,最后判断闰年的问题,+1就好了 1. #include<stdio.h> 2. #include<stdlib.h> 3. #include<math.h> 4. int main() 5. { 6. long int A[1000]={0},B[1000]{0},C,D,E,o,sum=原创 2021-12-05 22:19:30 · 130 阅读 · 0 评论 -
时间复杂度
对于时间复杂度,我只能了解个大概,最重要的一点就是,代码的运行时间。随着算法学习的加快,代码运行时长一旦遇到数字处理量大的,输出时间往往会超时,超出期望时间。下面我将阐明我个人的理解。最基础的算法,冒泡和选择,以及插入,这些是算法的基础。以冒泡为例,每次循环里面都必须执行一次内循环,假如有十个数,也就是做10+9+8…+1.所以,有n个数存储,那么要多几次呢,应该是1+2+3+…+n。一旦n数字变大,时间会违背我们便利的初衷。选择也是同样的意思。那么这时候也就引入了快排的概念。所以说,当数据量变大原创 2021-11-23 21:16:02 · 208 阅读 · 0 评论 -
对于二分法
二分法的思路:二分法是在一个排好序的数组中,由left,right,mid组成。mid=(left+right)/2。也就是两头对分,查找,所以一开始的mid,是数组的中间下标的量。当输入一个key值,key!=mid,那么根据从大到小,或者从小到大,进行left=mid+1或者right=mid-1;...原创 2021-11-23 17:48:28 · 604 阅读 · 0 评论 -
G - 二分法+时间复杂度(简单)
蒜头君手上有个长度为 n 的数组 A。由于数组实在太大了,所以蒜头君也不知道数组里面有什么数字,所以蒜头君会经常询问整数 x 是否在数组 A中。输入格式第一行输入两个整数 n和 m,分别表示数组的长度和查询的次数。接下来一行有 n 个整数接下来 m 行,每行有 1 个整数 x,表示蒜头君询问的整数。输出格式对于每次查询,如果可以找到,输出"YES",否则输出"NO"。数据范围1≤n,m≤10^5 ,0≤x≤10^6 。Sample Input10 51 1 1 2 3 5 5 7 8原创 2021-11-23 17:35:46 · 299 阅读 · 0 评论 -
E - 简单排序
蒜术师给了你一个 1010 个整数的序列,要求对其重新排序。排序要求:奇数在前,偶数在后;奇数按从大到小排序;偶数按从小到大排序。输入格式输入一行,包含 1010 个整数,彼此以一个空格分开,每个整数的范围是大于等于 00,小于等于 100100。输出格式按照要求排序后输出一行,包含排序后的 1010 个整数,数与数之间以一个空格分开。蒜术师给了你一个 1010 个整数的序列,要求对其重新排序。排序要求:奇数在前,偶数在后;奇数按从大到小排序;偶数按从小到大排序。输入格式输入一原创 2021-11-18 22:47:55 · 107 阅读 · 0 评论 -
F - 约瑟夫环(简单版)
传说约瑟夫当年活下来就是靠快速计算这个问题。nn 个人围成一圈,编号依次为 1,2,3\ldots n1,2,3…n。从第一个人开始报数,数到 mm 的人出列,再由下一个人重新从 11 开始报数,数到 mm 的人再出圈。以此类推,直到所有的人都出列。请输出依次出圈人的编号。输入格式两个整数 n,mn,m,1\le n,m \le 1001≤n,m≤100。输出格式nn 个用空格分隔的整数,表示出圈人的编号。Sample Input6 4Sample Output4 2 1 3 6 5原创 2021-11-17 20:17:35 · 218 阅读 · 0 评论 -
D - 暴力(稍简单)
百钱买百鸡问题:公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱,用 100100 文钱买 100100 只鸡,公鸡、母鸡、小鸡各买多少只?本程序要求解的问题是:给定一个正整数 nn,用 nn 文钱买 nn 只鸡,问公鸡、母鸡、小鸡各买多少只?输入格式输入一个正整数 nn。输出格式如果有解,依次输出公鸡、母鸡、小鸡的个数(用正整数表示)。如果无解,输出"No Answer."。数据范围1≤n≤200。Sample Input100Sample Output0 25 754 18 7原创 2021-11-16 18:24:07 · 72 阅读 · 0 评论 -
C - 二进制换十进制(简单)
把一个二进制数转化为十进制数。输入格式第一行一个正整数 n\ (1\le n\le 30)n (1≤n≤30),表示二进制数的长度。第二行一个二进制数。输出格式输出一个整数,表示对应的十进制数。Sample Input510101Sample Output21 1. #include<stdio.h> 2. int main(void) 3. { 4. int a; 5. scanf("%d",&a); 6. int sum = 0; 7.原创 2021-11-16 07:50:39 · 436 阅读 · 0 评论 -
B - 简单暴力(计算今年第几天)
请你计算出 xx 年 yy 月 zz 日是 xx 年的第几天。请注意闰年对答案的影响。输入格式一行三个整数,xx,yy 和 zz。(1583≤x≤2100)。数据保证入合法。输出格式一个整数,表示是第几天。Sample Input2016 3 1Sample Output61Sample Input 21900 3 1Sample Output 260 1. #include<stdio.h> 2. int main(){ 3. int year,mon.原创 2021-11-14 12:23:16 · 560 阅读 · 0 评论 -
简单排序
的正整数序列(正整数的值不超过 NN),请将其中的所有奇数取出,并按升序输出。输入格式共 22 行:第 11 行为 NN;第 22 行为 NN 个正整数,其间用空格间隔。输出格式增序输出的奇数序列,数据之间以逗号间隔。数据保证至少有一个奇数。共2行第1行为N;第2行为N个正整数,其间用空格间隔输出格式增序输出的奇数序列,数据之间以道号间隔,数据保证至少有一个奇数...原创 2021-11-14 11:42:28 · 365 阅读 · 0 评论 -
百钱白鸡问题和搬砖问题这一类型
百钱白鸡问题我国古代数学家张丘建在《算经》一书中提出的数学问题:1只公鸡5个铜钱,1只母鸡3个铜钱,3只小鸡1个铜钱。现在有100个铜钱,要买100只鸡,每种鸡至少要买一只,问有几种买法?输入 输出公鸡=4只,母鸡=18只,小鸡=78只公鸡=8只,母鸡=11只,小鸡=81只公鸡=12只,母鸡=4只,小鸡=原创 2021-11-09 19:58:05 · 788 阅读 · 0 评论 -
计算Fibonacci数列第n项的值(递归)
计算Fibonacci数列第n项的值(递归)(递归函数和全局变量)程序设计题#76081 计算Fibonacci数列第n项的值(递归)计算Fibonacci数列第n项的值(递归)斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)原创 2021-11-09 19:45:40 · 4033 阅读 · 0 评论 -
递归实现阶乘
递归实现阶乘描述输入一个正整数n的值(n不超过20),编程输出n!(n的阶乘)。程序中的整数请定义成long long型。请定义递归函数 long long fact(int n):计算阶乘。输入输出示例输入 输出示例 1 5 120 1. #include<stdio.h> 2. long long fact(int n) 3. { 4. if(n==1) return 1; 5. else return n*fact(原创 2021-11-09 19:15:23 · 4130 阅读 · 0 评论 -
计算n的阶乘
计算n|题目描述输入要求人一2输出要求输入样例输出样例原创 2021-11-09 17:50:59 · 98 阅读 · 0 评论 -
最小数与数列第一个数交换
最小数与数列第一个数交换描述输入一个正整数n<n<100),再输入n个整数将最小数与第一个数交换(若小数就在第一位,不需要交换),输出交换后的个数【输入】第一行输入一个正整数第二行输入n个整数【出】输出交换的n个整数 1. #include<stdio.h> 2. int main() 3. { 4. int a[100]; 5. int n,i,p,t; 6. scanf("%d", &n); 7. for(i=0;i<n;i+原创 2021-11-09 15:09:41 · 120 阅读 · 0 评论 -
逢七过
逢七过描述:一群人围坐成一圈玩报数的游戏游戏规则屋:从1开始报数,若遇到7的倍或者个位为7的数击拿代替,若犯错则受范可是这些人都太了,竟然没人犯错请问样聪明的你,现在当报数到N(0<N=10^7时击共次数是多少? 1. #include<bits/stdc++.h> 2. using namespace std; 3. int pd(int kk) 4. { while(kk>0) 5. { 6. if(kk%10==7) 7. return 1;原创 2021-11-09 14:04:14 · 665 阅读 · 0 评论 -
标题 : 插入排序
插入排序描述给出若干个数,将数字存储在数组中,然后使用插入排序,按照升序排列输出数字。输入一个整数n表示有n个数,接着输入这n个数。按照升序输出这n个数。#include<stdio.h>int main(){int k, x, N,i;scanf("%d", &N);int a原创 2021-10-22 22:54:28 · 65 阅读 · 0 评论 -
标题 :找大小
标题 :找大小描述:首先输入整数N(0<=N<=1000),紧接着在下一行连续输入N个数。随后输出这一组数的最小数,和最大数。原创 2021-10-22 22:52:52 · 60 阅读 · 0 评论