个数专题

spoj705( 求不相同的子串个数)

题意:求串s的不同子串的个数 解题思路:任何子串都是某个后缀的前缀,对n个后缀排序,求某个后缀的前缀的个数,减去height[i](第i个后缀与第i-1 个后缀有相同的height[i]个前缀)。 代码如下: #include<iostream>#include<algorithm>#include<stdio.h>#include<math.h>#include<cstrin

XTU 1233 n个硬币连续m个正面个数(dp)

题面: Coins Problem Description: Duoxida buys a bottle of MaiDong from a vending machine and the machine give her n coins back. She places them in a line randomly showing head face or tail face o

O(n)时间内对[0..n^-1]之间的n个数排序

题目 如何在O(n)时间内,对0到n^2-1之间的n个整数进行排序 思路 把整数转换为n进制再排序,每个数有两位,每位的取值范围是[0..n-1],再进行基数排序 代码 #include <iostream>#include <cmath>using namespace std;int n, radix, length_A, digit = 2;void Print(int *A,

LCP 485. 最大连续 1 的个数[lleetcode -11]

从今天起,我们的算法开始研究搜索,首先就是DFS深度优先搜索(depth-first seach,DFS)在搜索到一个新的节点时,立即对该新节点进行遍 历;因此遍历需要用先入后出的栈来实现,也可以通过与栈等价的递归来实现。对于树结构而言, 由于总是对新节点调用遍历,因此看起来是向着“深”的方向前进。 下面是一个一维的DFS算法 LCP 485. 最大连续 1 的个数 给定一个二进制数组 nu

双指针(5)_单调性_有效三角形的个数

个人主页:C++忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C++忠实粉丝 原创 双指针(5)_单调性_有效三角形的个数 收录于专栏【经典算法练习】 本专栏旨在分享学习C++的一点学习笔记,欢迎大家在评论区交流讨论💌 目录 1. 题目链接: 2.题目描述 : 3.解法 :     解法一(暴力枚举) :     算法思路 :     代码展示 : 暴力枚

HDU2521(求因子个数)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2521 解题思路: 数据量不大,直接O(n)遍历,对每个数求其因子个数,找出最大的即可。 完整代码: #include <functional>#include <algorithm>#include <iostream>#include <fstream>#includ

222.完全二叉树的节点个数

(写给未来遗忘的自己) 题目: 代码: class Solution {public:int countNodes(TreeNode* root) {queue<TreeNode*>node_que;if(root==nullptr) return 0;node_que.push(root);int result;while(!node_que.empty()){int layer_s

Kubernetes的alpha.kubernetes.io/nvidia-gpu无法限制GPU个数

问题描述: Pod.yaml文件中关于GPU资源的设置如下: 然而在docker中运行GPU程序时,发现宿主机上的两块GPU都在跑。甚至在yaml文件中删除关于GPU的请求,在docker中都可以运行GPU。 原因: 上例说明alpha.kubernetes.io/nvidia-gpu无效。查看yaml文件,发现该docker开启了特权模式(privileged:ture): 而

编写一个统计空格制表符与换行符个数的函数

int main(int argc, char* argv[]) {  double nc,nc1,nc2;     nc = nc1 = nc2 =0;  int c;  while((c = getchar()) != EOF)  {   if(c == '\t')    nc++;   else if(c == ' ')    nc1++;   else if(c == '\n')

用ACF和PACF计算出一堆数据的周期个数以及周期时长,数据分析python

具体步骤 1使用ACF和PACF:可以通过查看ACF图中的周期性峰值,找到数据中的周期性。如果ACF图在某个滞后期处出现显著的正相关峰值,并且这种模式在多个滞后周期中重复出现,这就是周期性信号的特征。而PACF则可以帮助确定延迟的直接影响。 2找周期数和周期长度:周期的时长可以通过ACF中第一个显著的峰值(排除滞后期为0时的峰值)来确定,而周期的个数则可以通过分析整个序列中的周期性重复次数来估计

输入一个字符串,分别统计出包含的英文字母、数字、空格和其他字符的个数

/*** */package testString;import java.util.Scanner;/***@author: Administrator*@date: 2016-12-26 下午09:23:41*/public class Main {/*** 统计出英文字母字符的个数。* * @param str 需要输入的字符串* @return 英文字母的个数*/public stat

牛客网《剑指Offer》 二进制中1的个数

题目描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 思路 负数用补码,其实就是求一个数据在计算机中是存储是怎么样子的。用位运算,就能很好实现。 class Solution {public:int NumberOf1(int n) {int count = 0;int flag = 1;while (flag != 0) {if ((n & f

C++机试——统计大写字符个数

题目 描述 找出给定字符串中大写字符(即'A'-'Z')的个数。 数据范围:字符串长度:1≤∣s∣≤250 1≤∣s∣≤250  字符串中可能包含空格或其他字符 输入描述: 对于每组样例,输入一行,代表待统计的字符串 输出描述: 输出一个整数,代表字符串中大写字母的个数 思路         根据asicc码判断区间,注意在C++中需要接收带有空格的字符串时可以使用函数getl

题目:输入 5 个数(含负数、小数)将它们按由小到大的顺序排列起来。提示:需要排序的数字通过参数传递进来。

题目:输入 5 个数(含负数、小数)将它们按由小到大的顺序排列起来。 提示:需要排序的数字通过参数传递进来。 例如: 输入:-1 2.1 -3 5 7 输出: -3 -1 2.1 5 7 import java.util.Scanner;public class FuShuXiaoShuPaiXu {public static void swap(double[] arr,int a,in

编程之美——寻找最大的K个数

编程之美——寻找最大的K个数 解法一: 我们先假设元素的数量不大,例如在几千个左右,在这种情况下,那我们就排序一下吧。在这里,快速排序或堆排序都是不错的选择,他们的平均时间复杂度都是 O(N * log2N)。然后取出前 K 个,O(K)。 总时间复杂度 O(N * log2N)+ O(K) = O(N * log2N)。 你一定注意到了,当 K=1 时,上面的算法也是

1的个数和2的幂等数

1.整数作为二进制1的个数(编程之美当中有出现) 2.判断整数是否为2的幂等数(例如 1,2,4,8,16,32...) 3.某个整数的下一个2的幂等数或者该数就是2的幂等数 (一) 支持无符号整数(一般方法) public static int numberOfOneForUnsignedBinary(int n){int count = 0;int i = n;while(i !=

组合数学 - 1的个数

1的个数   Mean:   输入一个n,计算小于10^n的正整数中含有1的数的个数。 analyse: 这题是一道组合数学课后思考题。 基本思路:  组合数学乘法原则 + 容斥原理 n位数中,每位可选:{0,1,2,3,4,5,6,7,8,9},所以共有10^n种,其中要除掉每位都为0的情况,所以要减一。 其中每位上不选1的情况为:{0,2,3,4,5,6,7,8,9

如何将统计字符串中各字符个数并按序输出

要求: 已知字符串"aabccdeefbbacddeff" 如何在控制台输出a(3)b(3)c(3)d(3)e(3)f(3)形式 思路: 利用TreeMap,遍历字符串,将每一字符当作键看,若TreeMap中无此键,添加该键,并将其值置为1,若有,值加一并且覆盖原键值对,最后利用缓冲区输出 主要代码如下: TreeMap<Character,Integer> tm = new Tr

力扣刷题--2180.统计各位数字之和为偶数的整数个数【简单】

题目描述 给你一个正整数 num ,请你统计并返回 小于或等于 num 且各位数字之和为 偶数 的正整数的数目。 正整数的 各位数字之和 是其所有位上的对应数字相加的结果。 示例 1: 输入:num = 4 输出:2 解释: 只有 2 和 4 满足小于等于 4 且各位数字之和为偶数。 示例 2: 输入:num = 30 输出:14 解释: 只有 14 个整数满足小于等于 30 且各位数字

【数据结构】二叉树的链式结构,二叉树的遍历,求节点个数以及高度

目录 1. 二叉树链式结构的概念 2. 二叉树的遍历 2.1 前序遍历 2.2 中序遍历 2.3 后序遍历 2.4 层序遍历 3. 二叉树的节点个数以及高度 3.1 二叉树节点个数 3.2 二叉树叶子节点个数 3.3 二叉树的高度 3.4 二叉树第k层节点个数 3.5 二叉树查找值为x的节点 4.  二叉树的创建和销毁 4.1 二叉树的销毁 4.2 通过前序遍历的数组

python实战实例:统计数字字符个数输出亲朋字符串

1.统计数字字符个数—题目描述 输入一行字符,统计出其中数字字符的个数。 输入格式 一行字符串。 输出格式 输出为 1 行,输出字符串里面数字字符的个数。 输入输出样例 输入 #1 Today is 2021-03-27 输出 #1 8 char=input()x=0for i in char:if i.isdigit():x=x+1print(x) 要点: isa

day-47 最大连续1的个数 III

思路 滑动窗口:如果用left和right表示连续1的左右边界,那么意味着可以把0修改为1的次数为k次 解题过程 用一个变量num记录left和right之间0的个数,当num<=k时,right++,num>k时,将left向右移动,直到不再满足num>k Code class Solution {public int longestOnes(int[] nums, int k) {in

[M滑动窗口] lc1004. 最大连续1的个数 III(滑动窗口+模板题)

文章目录 1. 题目来源2. 题目解析 1. 题目来源 链接:1004. 最大连续1的个数 III 题单: 滑动窗口(定长/不定长/多指针) 二、不定长滑动窗口 §2.1 求最长/最大 2. 题目解析 思路: 比较直接的滑动窗口哈,好像也没什么需要注意的点。 前缀和+二分 也不是不能做。官解也提到了这个点。但对于本题来讲,看到就是滑窗,没毛病吧。 时间复

编写程序,读入未指定个数的整数,判断读入的整数有多少个,读入的负数有多少个

编写程序,读入未指定个数的整数,判断读入的整数有多少个,读入的负数有多少个,输入0表示程序结束,计算总和和平均值。 import java.util.Scanner; public class chapt3 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.

77.给定两个整数 `n` 和 `k`,实现一个算法返回范围 `[1, n]` 中所有可能的 `k` 个数的组合。你可以按任何顺序返回答案

LeetCode 77. 组合详解 一、题目描述 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。你可以按任何顺序返回答案。 示例 1: 输入:n = 4, k = 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] 示例 2: 输入:n = 1, k = 1 输出:[[1]] 提示: 1 <= n

编程之美变形记——“49”的个数

昨天在杭电poj上看到一个道题。题目总结出来就是,给定一个正整数N,求出从1到N(包含N)之间49出现的个数。 举例:如N=101 则1到101之间101个数中,49出现一次。同时,409,4009(这样的数字不合法)。看到第一眼就想起来编程之美2.4有一道求“1”的个数的题目,这道题其实就是把“1”换成了49。 我第一眼想到的是用49进制,不过仔细考虑一下之后是不合适的。然后想了一个小时左