ICode9

精准搜索请尝试: 精确搜索
  • 双指针算法2022-06-14 13:33:56

    用处就是优化 例如一道题朴素做法就是暴力遍历,如下: for(int i = 0; i < n; i++)   for(int j = 0; j <= i; j++) 此时时间复杂度是\(O(n^2)\)的。而通过双指针算法,就可以将其优化为O(n)的。 基本思想如下: for (int i = 0, j = 0; i < n; i ++ ) { while (j < i && check(i, j

  • 返回一个整数数组中最大子数组的和2022-06-14 13:00:08

    要求: 输入一个整形数组,数组里有正数也有负数。 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值。要求时间复杂度为O(n)   代码部分 import java.util.Scanner; public class Test2 { public static void main(String[] args){

  • P1047 [NOIP2005 普及组] 校门外的树2022-06-12 19:00:37

    题目描述 某校大门外长度为 ll 的马路上有一排树,每两棵相邻的树之间的间隔都是 11 米。我们可以把马路看成一个数轴,马路的一端在数轴 00 的位置,另一端在 ll 的位置;数轴上的每个整数点,即 0,1,2,\dots,l0,1,2,…,l,都种有一棵树。 由于马路上有一些区域要用来建地铁。这些

  • java基础知识12022-06-12 18:03:56

    javac 运行 .java 文件 java 运行 .class 文件 在表达式中小范围变量自动转换为较大范围变量进行计算,结果类型由最高的类型决定,byte char short 自动转换为 int 计算,float 转换为 double 计算。 浮点型强转为整型,丢掉小数部分,直接返回整数部分。 两个整数相除,结果是整数,因为最高类

  • 剑指 Offer 65. 不用加减乘除做加法(位运算)2022-06-12 14:03:51

    剑指 Offer 65. 不用加减乘除做加法 写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。   示例: 输入: a = 1, b = 1 输出: 2   提示: a, b 均可能是负数或 0 结果不会溢出 32 位整数 1 class Solution { 2 public: 3 i

  • 计算整数数组的差值2022-06-12 10:04:58

    方法一 function val(arr) { let max = Math.max(...arr); let min = Math.min(...arr); return max - min } let arr = [1, 2, 3, 4, 5, 6]; console.log(val(arr)); 方法二 function val(arr) { arr = arr.sort(function(x , y) { return x - y; }) let diff = arr[0]

  • Leetcode 1952. 三除数2022-06-11 09:35:54

    给你一个整数 n 。如果 n 恰好有三个正除数 ,返回 true ;否则,返回 false 。 如果存在整数 k ,满足 n = k * m ,那么整数 m 就是 n 的一个 除数 。 示例 1: 输入:n = 2 输出:false 解释:2 只有两个除数:1 和 2 。 示例 2: 输入:n = 4 输出:true 解释:4 有三个除数:1、2 和 4 。 提示: 1 <= n

  • 洛谷 P1056排座椅题解--zhengjun2022-06-10 19:38:02

    题目描述 上课的时候总会有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情。不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的 \(D\) 对同学上课时会交头接耳。 同学们在教室中坐成了 \(M\) 行 \(N\) 列,坐在第 \(i\) 行第 \(j\) 列的

  • 1107:校门外的树2022-06-09 22:09:26

    1107:校门外的树 时间限制: 1000 ms         内存限制: 65536 KB提交数: 62329     通过数: 33466 【题目描述】 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整

  • 级数求和2022-06-09 18:35:55

    描述 已知:Sn=1+1/2+1/3+…+1/n。显然对于任意一个整数k(k≤15),当n足够大的时候,Sn大于k。现给出一个整数k(1≤k≤15),要求计算出一个最小的n,使得Sn>k。 格式 输入格式 一个整数k 输出格式 一个整数n 样例 输入样例 1 输出样例 2 代码 #include <stdio.h> int main() {

  • 整数分解和for循环2022-06-09 13:33:07

    整数分解 我们在看到三位数 就知道那个是个位数 那个是十位数 那个百位数 但程序不可以 程序需要我们来定义 在做之前我们需要了解程序中的加减乘除 加的符号+ 减的符号- 乘的符号* 除的符号/ 当然在编程中还有一个就是取模也就是取出余数也称为取余 取余的符号是% 案例:如果我们有

  • 整数分解和for循环2022-06-09 13:31:13

    整数分解: 什么是整数分解:就是输入的一为数比如356,那么输出出来的就是653. 也就是把数字逆向输出 整数分解:又称素因素分解,把个位,十位,百位   案例 键盘录入,定义一个number,键盘录入接受一下,定义一个次数, 然后while(执行条件)循环, int digit = number %10;result = result*10+digit;Sys

  • 整数分解和for循环2022-06-09 12:02:37

    整数分解 当你输入一个整数后,程序会将你输入的整数进行拆分输出,比如说你输入的是123,程序会输入1  2  3,将数字单个输出 Scanner sc = new Scanner(System.in);int i = sc.nextInt();do { int a = i%10; System.out.println(a); i=i/10;}while (i>0);运行结果:    当你

  • python2022-06-09 12:00:43

    基础数据类型 int -10 long 10000L float 2.50 string 列表list["python",1,2,3,"String",10.2] 元组tuple("python",1,2,3,"String",10.2) 字段Dictionary{"name":"vlaue","key":"value"} 集合set{1,

  • 输入字符串s输出s中包含所有整数的最小和,2022-06-08 23:32:44

    package 德科; import java.util.Scanner; public class Main96_1 { /* 1.输入字符串s输出s中包含所有整数的最小和, 说明:1字符串s只包含a~z,A~Z,+,-, 2.合法的整数包括正整数,一个或者多个0-9组成,如:0,2,3,002,102 3.负整数,负号开头,数字部分由一个或者多个0-9

  • 赋值和浮点型2022-06-07 17:35:13

    赋值 比如:a=b 那么b=10 a=就等于10,为什么应为b把值传给a了 右边是送值的,左边是收值的   首先int 类型price变量 输出(price变量)它会提示爆红色波浪线我们点击波浪线回撤,会显示在变量的后面有一个0,这是默认初始值 定义一个amount =100;初始值 Amount = in.nextInt(); 输出(amount+”

  • leetcode829 连续整数求和2022-06-07 15:00:47

    思路: 数论。参考了https://leetcode.cn/problems/consecutive-numbers-sum/solution/by-ac_oier-220q/。 实现: 1 class Solution { 2 public: 3 int consecutiveNumbersSum(int n) { 4 int res=0; 5 for(int i=1;i*i<2*n;i++){ 6 if(2*n%i

  • leetcode2276 统计区间中的整数数目2022-06-06 15:01:15

    思路: 动态开点线段树,这里维护了区间和和区间赋值。 实现: 1 class SegmentTree { 2 public: 3 int N = (int)1e9; 4 class Node { 5 public: 6 // ls 和 rs 分别代表当前区间的左右子节点 7 Node*ls=nullptr, *rs=nullptr; 8 // val

  • 190. 颠倒二进制位(位运算)2022-06-06 00:32:23

    190. 颠倒二进制位 颠倒给定的 32 位无符号整数的二进制位。 提示: 请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。 在 Java 中,

  • Leetcode 2094. 找出 3 位偶数2022-06-05 11:31:36

    给你一个整数数组 digits ,其中每个元素是一个数字(0 - 9)。数组中可能存在重复元素。 你需要找出 所有 满足下述条件且 互不相同 的整数: 该整数由 digits 中的三个元素按 任意 顺序 依次连接 组成。 该整数不含 前导 零 该整数是一个 偶数 例如,给定的 digits 是 [1, 2, 3] ,

  • 191. 位1的个数(位运算)2022-06-05 01:00:44

    191. 位1的个数 编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量)。   提示: 请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整

  • Leetcode 442. 数组中重复的数据(已解决)2022-06-04 10:33:07

    给你一个长度为 n 的整数数组 nums ,其中 nums 的所有整数都在范围 [1, n] 内,且每个整数出现 一次 或 两次 。请你找出所有出现 两次 的整数,并以数组形式返回。 你必须设计并实现一个时间复杂度为 O(n) 且仅使用常量额外空间的算法解决此问题。 示例 1: 输入:nums = [4,3,2,7,8,2,3,

  • 「AHOI2022」山河重整 解题报告2022-06-03 02:00:23

    题目大意 给定整数集合 \(S=\{1,...,n\}\), 计算有多少个子集 \(T\subseteq S\), 使得 \(1,2,\dots,n\) 都可以被表示为 \(T\) 的一个子集中所有数的和. \(n\le 5\times 10^5\), 答案对 \(M\) 取模. 解法概要 设 \(a_{k+1}\) 计数和为 \(k\), 且可以表达出 \(1,\dots,k\) 的集合数

  • 数据转换-整数字节数组2022-06-02 15:33:41

    任务详情 任务详情 0. 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务 1 参考《GMT 0009-2012 SM2密码算法使用规范》第6节“数据转换” 在utils.h和utils.c中完成整数与8位字节串的转换功能(10'): int Int2ByteArr(unsigned int i, unsigned char * ba); int ByteArr2I

  • 数据转换-整数字节数组2022-06-02 15:32:52

    在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务 1 参考《GMT 0009-2012 SM2密码算法使用规范》第6节“数据转换” 在utils.h和utils.c中完成整数与8位字节串的转换功能(10'): int Int2ByteArr(unsigned int i, unsigned char * ba); int ByteArr2Int(unsigned char *

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有