一元运算符++,–,幂运算 public class Dome04 { public static void main(String[] args) { //一元运算符 //++ 自增 //-- 自减 int a = 3; int b = a ++; //执行代码后,先给b赋值,再自增 //a++ a=a+1 System
example https://pintia.cn/problem-sets/994805342720868352/problems/994805365537882112 #include <iostream> #include <queue> #define maxSize 10 using namespace std; typedef struct BTNode { int left = -1; int right = -1; }BTNode; void arr2BT
Description 小X 正困在一个密室里,他希望尽快逃出密室。 密室中有N 个房间,初始时,小X 在1 号房间,而出口在N 号房间。 密室的每一个房间中可能有着一些钥匙和一些传送门,一个传送门会单向地创造一条从房间X 到房间Y 的通道。另外,想要通过某个传送门,就必须具备一些种类的钥匙(每种
java高级多线程(1)–实现java线程 多线程:一个程序同时执行多个任务的现象 有两个方法可以实现Java线程的定制: 1)通过继承Thread类来创建。 2)通过实现Runnable接口,并通过Thread类和实现Runnable接口的类来建立线程。 *继承Thread类 start()run()sleep()interrupt()吵醒getName()
Java基础语法 标识符注意点 所有标识符都以字母 美元符($) 或者下划线 (_) 开始 首字母之后可以是字母 美元符($) 下划线(_) 或者数字的任何字符组合 不能使用关键字作为变量名或方法名 标识符是大小写敏感的 合法标识符举例:age ,$salary, _value, __1_value 非法标识
归并排序 主要还是体现的分治思想,将数据先拆分n组在进行组合。 同时也得利用到递归回溯的思想 归并排序和快速排序时间复杂度均为nlogn 上题 第一题:(同快排一样的题用归并排序来写) 给定你一个长度为n的整数数列。 请你使用归并排序对这个数列按照从小到大进行排序。 并将排好
题目 我们的考试一般总分都是100分,当我们做的全对时,我们试卷就可以是100分。 下面我们玩一个游戏,来凑出100分。我们给大家9个数字,大家使用“+”和“-”把这九个数字串成一个等式,等式的结果就是100. 给大家的等式如下: 1 2 3 4 5 6 7 8 9 = 100 在1~9的数字中加上“+”或“-”
总结 虽然 \(A\) 了一道题,但是 \(T1\) 人均切没有什么用 差距在 \(T2\) 和 \(T3\) A. Manager 分析 发现子树内的贡献只能是原中位数或者原中位数后面的那一个数 而且权值小更改后的一定是较大的贡献,权值大的更改后一定是较小的贡献 以权值为下标开线段树,做线段树合并就行了 代
德州扑克 题目描述 德州扑克 (100 分) 最近,阿夸迷于德州扑克。所以她找到了很多人和她一起玩。由于人数众多,阿夸必须更改游戏规则: 所有扑克牌均只看数字,不计花色。 每张牌的值为1、2、3、4、5、6、7、8、9、10、11、12、13 中的一种(对应A,2、3、4、5、6、7, 8、9、10,J,Q,K) 每位玩家从
T3没删调试,不然有30。后来发现快读写错了,80分没了啊 A Manager 题目大意 : 给出一颗关系树,每人有一个能力值,每人获得的奖金是子树内能力值的中位数(\(\frac{k+1}{2}\)),询问每个人的能力改为1e5之后需要发多少奖金 考场上写的暴力,弄个vector存每个点子树内的所有数,然后sort一下找
1 /// <summary> 2 /// 集合分组 3 /// </summary> 4 /// <param name="array">需要分组的集合</param> 5 /// <param name="size">每个分组的大小</param> 6 /// <returns&
题目 http://oj.ecustacm.cn/problem.php?id=1317 题解 简单的深搜 用二维数组存放迷宫 两个for循环,每个位置都dfs一下(每次dfs都要记得先初始化vis数组) 能出去就flag+1 #include<bits/stdc++.h> using namespace std; string mp[10] = { "UDDLUULRUL", "UURLLLRRRU",
T1链接 题意:把两个集合的元素全部凑到一个集合中,从小到大输出即可; idea:用set天然带有去重的功能 ACcode: #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<map> #include<set> #define LL long long using names
自己懒得写网络流用的,你也可以拿去用: 普通最大流: struct FLOW{ int flow[N],nex[N],first[N],v[N],dep[N],q[N],no[N],num=1,aim,fromt[N]; void add(int from,int to,int val){nex[++num]=first[from];fromt[num]=from;first[from]=num;v[num]=to;flow[num]=val;} bo
没有除法的版本 弱化版Blog 题目 分析 只针对除法而言,如果商很大直接用bitset判断是否存在, 否则直接预处理最近的答案判断是否在区间内即可,注意0要特判 代码 #include <cstdio> #include <cctype> #include <bitset> #include <algorithm> #define rr register using namespace
/** * 排序算法-冒泡排序 * 冒泡排序(Bubble Sort)算法是所有排序算法中最简单、最基本的一种。 * 冒泡排序算法的思路就是交换排序,通过相邻数据的交换来达到排序的目的。 * 冒泡排序的思路: * (1)对数组中的各数据,依次比较相邻的两个元素的大小。 * (2)如果前面的数据大于后面的
数据库连接通用类 package demo.dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public abstract class BaseDao { private final String user = "scot
前言 在MySQL数据库中,binlog是非常关键的日志文件,相关参数也是非常多;其中,binlog_row_image是一个很重要但又容易被忽略的参数。binlog_row_image参数,决定了binlog是如何记录前镜像和后镜像的,这也就会直接影响到数据闪回、主从复制等。 概念 首先,我们先介绍一下前镜像和后
题目: 小明开了一家糖果店。他别出心裁:把水果糖包成4颗一包和7颗一包的两种。糖果不能拆包卖. 小朋友来买糖的时候,他就用这两种包装来组合。当然有些糖果数目是无法组合出来的,比如要买 10 颗糖。 你可以用计算机测试一下,在这种包装情况下,最大不能买到的数量是17。大于17的任何
问题: 难度:easy 说明: 感觉不像是 leetcode 的 easy 题,题目实际要求其实是: 输入给出一个 String[] ,日志里面都是 ' ' 空格字符隔开,只有 小写字母和 数字,空格隔开各个字符串都是 先小写字母 + 后数字, 然后 String[i] 第一个 空格前面的字符串 作为符号,将 符号后面的所有 空格以及
题目链接:点击进入 题目 题意 求最长回文子序列,同时要求这个回文子序列从中间向两边非严格递减 思路 Manacher算法,在预处理的时候需要用不会影响题目的数字(负数和0等)来组成新的序列。 同时扩展回文子序列时需要多一句 str[i-p[i]]<=str[i-p[i]+2] 来保证从中点向两边非严格递
算法竞赛入门经典 3-1 得分 给出一个由O和X组成的串(长度为1-80),统计得分。每个O的得分为目前连续出现的O的个数,X的得分为0。例如:OOXXOXXOOO的得分为1+2+0+0+1+0+0+1+2+3。 #include<iostream> using namespace std; int main() { string s; cin>>s; s+='P'; //
题目链接:点击进入 题目 题意 给定一个字符串,求最长回文子串。 思路 Manacher算法模板 代码 #include<iostream> #include<string> #include<map> //#include<unordered_map> #include<queue> #include<cstdio> #include<vector> #include<cstring> #include&
题目链接:点击进入 题目 题意 一个字符串,由26个小写英文字母组成, 每个字母都有各自的价值, 要你将一个字符串切成两个子串, 总价值为两个串价值和, 若是回文, 则串的价值为每个字母价值和, 否则为0,问最大价值多少。 思路 将原串逆序,然后原串与逆序串相互ekmp匹配;对逆串枚举
题目:统计所有小于非负整数 n 的质数的数量 示例 1: 输入:n = 10 输出:4 解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。 示例 2: 输入:n = 0 输出:0 示例 3: 输入:n = 1 输出:0 提示: 0 <= n <= 5 * 10^6 暴力枚举: class Solution { public int countPrimes(int n) {