ICode9

精准搜索请尝试: 精确搜索
  • 排序与检索,UVa 10474,(大理石在哪里)2020-09-25 23:01:28

    题目:有n个大理石,每个大理石上写了一个非负整数,首先对其进行排序,然后回答q个问题,每个问题问是否有一个大理石上写着某个整数x,如是,则回答哪个大理石上写着x,排序后的大理石从左到右编号为1-n;//可以循环输入 分析: 第一步先进行排序,用algorithmi头文件中的sort进行排序,sort(aa,aa+n)//

  • 1042. 不邻接植花2020-09-25 21:02:04

    1042. 不邻接植花 有 N 个花园,按从 1 到 N 标记。在每个花园中,你打算种下四种花之一。 paths[i] = [x, y] 描述了花园 x 到花园 y 的双向路径。 另外,没有花园有 3 条以上的路径可以进入或者离开。 你需要为每个花园选择一种花,使得通过路径相连的任何两个花园中的花的种

  • 六、抽象类和接口、类型和类型之间的关系2020-09-25 21:00:48

    一、抽象类相关概念: 1.抽象类:将类和类之间共同特征提取出来,形成的就是抽象类。 2.抽象类的定义:   【修饰符列表】 abstract class 类名{     类体;   } 3.抽象方法:   表示没有实现的方法,没有方法体的方法。抽象方法必须在抽象类中。   如: public abstract void doSome

  • 数据结构与算法--冒泡排序2020-09-25 18:31:41

    冒泡排序(Bubble Sort) 冒泡排序是一种交换排序 基本思想:两两比较相邻的的元素,如果反须则交换,直到没有反序的记录为止 代码实现: import java.text.SimpleDateFormat; import java.util.Arrays; import java.util.Date; public class BubbleSort { public static v

  • 一本通1268:【例9.12】完全背包问题(完全背包问题详解)2020-09-25 18:01:54

    原题传送门 一道完全背包问题的模板题,和01背包问题一样,还是拥有两种思路 \(Solution\ 1\) 依然是一个朴实无华的二维数组 状态的表示:\(f[i][j]\)表示前\(i\)个总重量不超过\(j\)的最大价值 状态的转移:\(f[i][j]=max(f[i-1][j],f[i][j-w[i]]+c[i])\ (w[i]<=j)\) 注:\(w[i]\)表示第\(

  • 扩展欧拉定理2020-09-25 16:00:43

    扩展欧拉定理 首先,欧拉定理为 \[若a与m互质,则有 a^{\varphi(m)}\equiv1(\mod m) \]我们可以发现费马小定理其实就是欧拉定理的特殊情况。 证明的话,构造一个与\(m\)互质的数列操作,利用剩余系证明 扩展欧拉定理为 \[a^b\equiv \begin{cases}a^{b\mod\varphi(p)},&\gcd(a,p)=1\\ a^b

  • LeetCode.88 合并两个有序数组2020-09-25 15:33:05

    题目描述: 给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。 说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。   与“替

  • 声明的冷知识2020-09-25 13:03:12

    五期-六组-20赵振航(小白):一个个的都想要照片,说出来偶遇又不干.... 张同:有个冷知识

  • 2020.9.252020-09-25 13:00:33

    SMZX的NOIP模拟赛7 这场状态不好,只过了一道。(结果又是赛后灵光乍现,想了想就知道后两题怎么做了......) T1 赛后翻到了原题,CF1311F Moving Points 赛时唯一过的一道,蛮简单的。 对于任意两个点,当靠左的点能追上右边的点时,它们一定能重合,因为时间可以不是整数。 分类讨论所有可能的情

  • Java构造函数及重载2020-09-25 12:03:09

    Overloaded的方法是可以改变返回值的类型。 这句话是正确的,唯一区分方法重载的是方法的参数列表不同,当参数列表不同时就可改变其返回类型 package alltest; public class OverLoadTest { public void m1(int x){} public int m1(int x,int y){return 12;} // public S

  • l洛谷 P6030 [SDOI2012]走迷宫 概率与期望+高斯消元2020-09-25 11:35:43

    题目描述 传送门 分析 首先判掉 \(INF\) 的情况 第一种情况就是不能从 \(s\) 走到 \(t\) 第二种情况就是从 \(s\) 出发走到了出度为 \(0\) 的点,这样就再也走不到 \(t\) 然后我们去考虑 \(60\) 分的做法 我们设 \(dp[u]\) 为当前在点 \(u\) 走到点 \(t\) 的期望步数 那么就有 \(dp[

  • 加权图的最小生成树、最短路径算法 - java实现2020-09-25 11:34:37

    加权图相关算法 前言 本文主要介绍加权图算法中两个重要应用:最小生成树和最短路径。 求最小生成树时针对的是加权无向图,加权有向图的最小生成树算法成为“最小属树形图”问题,较为复杂,本文不做讨论。 求最短路径则是针对加权有向图,在不同限制条件下,适应不同的算法: 1. 权重非负,采用D

  • java安全编码指南之:可见性和原子性2020-09-25 11:03:05

    目录简介不可变对象的可见性保证共享变量的复合操作的原子性保证多个Atomic原子类操作的原子性保证方法调用链的原子性读写64bits的值 简介 java类中会定义很多变量,有类变量也有实例变量,这些变量在访问的过程中,会遇到一些可见性和原子性的问题。这里我们来详细了解一下怎么避免这

  • 判断子序列2020-09-25 11:01:17

    此博客链接:https://www.cnblogs.com/ping2yingshi/p/13728786.html 判断子序列 题目链接:https://leetcode-cn.com/problems/is-subsequence/ 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s 是个

  • 根据中序、后续遍历序列构建二叉树2020-09-25 10:03:16

    算法思想   后序遍历序列的最后一个节点是根节点,而中序遍历的根节点左侧都是左子树的节点,右侧都是右子树的节点,根据这种特点,我们可以从后序遍历中找到根节点,再在中序遍历中找到根节点,然后递归的对中序遍历的左子树及右子树进行建树; 代码 struct TreeNode { int val;

  • 结构与算法(04):排序规则与查找算法2020-09-25 10:01:49

    本文源码:GitHub·点这里 || GitEE·点这里 一、递归算法 递归就是方法自己调用自己,每次调用时传入不同的变量,可以让代码变得简洁。递归算法在计算机科学中是指一种通过重复将问题分解为同类的子问题而解决问题的方法,递归式方法可以被用于解决很多的计算机科学问题,因此它是计算机

  • 「csp模拟」模拟测试12020-09-25 09:32:18

    平凡的函数 题目描述 题解 直接线性筛即可, 然后记录一下质因子的幂数。 code #include <cstdio> #include <cctype> #include <cmath> #include <iostream> using namespace std; #define print(x) cerr << #x << " : " << x << endl; inline in

  • 利用哈希算法找两个文件代码行不同的C语言代码2020-09-25 09:31:22

    先上代码 #include<stdio.h> #include <string.h> #include<stdlib.h> const int maxn = 100000000; typedef struct NODE{ struct NODE* next; char* str; }Node; Node BUFF[100000000]; unsigned int ELFHash(char* str){ unsigned int hash=0; unsig

  • POJ3666 - Making the Grade - 简单DP+滚动数组2020-09-25 09:02:27

    题意 先给出了一个\(n\),之后给出\(n\)个数, 要求通过改变一些数,使得最后变成有序的序列(增或减),输出最小的修改量。 思路 二维DP+滚动数组。 因为数据较弱,所以不用严格递增或严格递减,所以序列中的高度一定是出现过的高度。 所以,最终修改后,或者和前一个数字一样,或者和后一个数字一样,这

  • HihoCoder1478 - 水陆距离 - 简单BFS2020-09-25 08:33:06

    题意 中文题。 思路 本来直接先把水域存起来,之后再for遍历,遇到陆地就用这个陆地去搜所有的水域,然后,TLE。 正确的做法是 BFS ,我想到了但是我没写出来。我又以为是记忆化搜索。 补充 这里我用到pair, 放上我之前写的pair的用法:https://www.cnblogs.com/OFSHK/p/11788576.html。 AC代

  • HDU1114 - Piggy-Bank - 完全背包变形2020-09-25 08:31:38

    题意 首先给出\(e\)和\(f\),代表空猪重量和空猪装满硬币的重量; 接下去给出1个\(n\),表示接下来又\(n\)行不同的硬币类型,每种硬币再给出一个价值\(p\)和重量\(w\); 最后问我们是否能输出存钱罐猪中的最小金额,如果可以直接输出给定格式的语句,否则输出 This is impossible. 。 思路 完全

  • JAVA第二章知识点2020-09-25 08:02:38

    JAVA第二章知识点 本章知识梳理 2.1 关键字 2.2 标识符 2.3 变 量 2.4运算符 2.5 程序流程控制 2.6 方法 2.1 关键字 关键字(keyword)的定义和特点 定义:被java语言赋予了特殊含义,用做专门用途的字符串(单词) 特点:关键字中所有字母都为小写 保留字(reserved word) 定义:现有java版本

  • 点分治学习笔记2020-09-25 06:33:45

    简介 点分治顾名思义是利用分治的思想,将原本要\(n^3\)的操作降到\(\Theta (n^2\times log_n)\),大大提高了优越性(不提高效率谁学啊喂) 基本思路 点分治如同普通的分治一样,普通的分治是处理两种情况:在一个区间的任务转化为两个区间的任务,把在两个子区间的任务在两个子区间里运算,而在

  • 20200925--矩阵加法(奥赛一本通P93 6 多维数组)2020-09-25 06:33:35

    输入两个n行m列的矩阵A和B,输出它们的和A+B 输入: 第1行包含两个整数n和m(1<=n<=100,1<=m<=100),表示矩阵的行数和列数。 接下来n行,每行m个整数,表示矩阵A的元素。 接下来n行,每行m个整数,表示矩阵B的元素。 相邻两个整数之间用单个空格隔开,每个元素均在1-1000之间。 输出:n行,每行m个整

  • day21_内部类丶包装类2020-09-25 05:04:25

    内部类 概述: 当一个事物的内部,还有一个部分需要一个完整的结构进行描述,而这个内部的完整的结构又只为外部事物提供服务,那么整个内部的完整结构最好使用内部类。 在Java中,允许一个类的定义位于另一个类的内部,前者称为内部类,后者称为外部类。 Inner class一般用在定义它的类或语句

专注分享技术,共同学习,共同进步。侵权联系[admin#icode9.com]

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

ICode9版权所有