当前位置: 首页 > news >正文

手机网站建设商场江阴网站优化公司

手机网站建设商场,江阴网站优化公司,在线直播,网页设计个人介绍16届蓝桥杯算法类知识图谱.pdf 1. 格式打印 %03d:如果是两位数,将会在前面添上一位0 %.2f:会保留两位小数 如果是long,必须在数字后面加上L。 2. 进制转化 2.1. 十进制转任意进制: 十进制转任意进制时&#xff…


16届蓝桥杯算法类知识图谱.pdf

1. 格式打印

%03d:如果是两位数,将会在前面添上一位0

%.2f:会保留两位小数

如果是long,必须在数字后面加上L

2. 进制转化

2.1. 十进制转任意进制:

十进制转任意进制时,将这个十进制数除以进制数,比如2(也就是十进制转二进制),得到商和一个从0~1的余数,然后再以这个商为被除数,除了进制数2,继续得到商和一个从0~1的余数。以此方式不断相除,直到得到的商为0为止。此时,得到若干个余数,把这些余数按从后到先的顺序排列起来,那么这个排列起来的值即为该十进制转换成二进制的值。计算如图所示:

最后得到的余数为二进制的非零的最高位,最先得到的余数为二进制的最低位,可知:十进制数9转换成二进制数为1001。

2.2. 任意进制转十进制:

任意进制转十进制时,以二进制数1001为例:该进制的最低位(右一)的值1就表示实际的十进制值1,次低位(右二)的值0表示进制数2的一次方的0倍即为0,次次低位(右三)的值0表示进制数2的二次方4的0倍即为0,最高位(左一)的值1表示进制数2的三次方8的1倍即为8,以此类推,将每位得到的十进制数相加得到9,该和即为二进制数1001对应的十进制数。计算如图所示:

3. 一维前缀和

  1. 快速求解某区间内的各种形式的和即可使用
  2. 使用迭代求和
sum[i]=sum[i-1]+num[i]

4. 一维差分

  1. bi = ai-ai-1

其中b1 = a1

  1. 如果cb的前缀和:即,ci = ci-1 + bi
  2. 那么c就是原数组a

4.1. 常见性质

  1. 差分数组都是0,说明原数组每个元素都相同
  2. 差分数组的前缀和就是原数组
  3. 如果bl + d 与 br+1 - d同时作用,则c数组就是原数组ai+d的结果
  4. 对差分的某一个位置减一等价于对原数组此位置及以后的位置减一

4.2. 特殊数列

数列: 1 4 10 20 35

对应的差分数列:1 3 6 10 15

差分数列是等差数列

5. 快读模板

static FastReader in = new FastReader(); // 创建一个静态的 FastReader 对象,用于处理输入
static PrintWriter out = new PrintWriter(System.out); // 创建一个静态的 PrintWriter 对象,用于输出数据// FastReader 类,用于处理高效的输入
static class FastReader {static BufferedReader br; // 静态的 BufferedReader,用于高效读取输入static StringTokenizer st; // 静态的 StringTokenizer,用于将输入字符串分割为标记// 构造函数,初始化 BufferedReader 以从标准输入读取数据FastReader() {br = new BufferedReader(new InputStreamReader(System.in)); // 使用 System.in 作为输入流初始化 BufferedReader}// next() 方法,返回下一个字符串标记String next() {String str = ""; // 定义一个空字符串,用于存储读取到的行// 如果 StringTokenizer 为 null 或没有更多标记可读取,读取新行while (st == null || !st.hasMoreElements()) {try {str = br.readLine(); // 使用 BufferedReader 读取一整行输入} catch (IOException e) { // 捕获可能的 I/O 异常throw new RuntimeException(e); // 如果发生异常,抛出运行时异常}st = new StringTokenizer(str); // 将读取到的行传递给 StringTokenizer 进行分割}return st.nextToken(); // 返回 StringTokenizer 的下一个标记}// nextInt() 方法,返回下一个整数输入int nextInt() {return Integer.parseInt(next()); // 使用 next() 方法读取字符串并转换为整数}// nextDouble() 方法,返回下一个双精度浮点数输入double nextDouble() {return Double.parseDouble(next()); // 使用 next() 方法读取字符串并转换为双精度浮点数}// nextLong() 方法,返回下一个长整数输入long nextLong() {return Long.parseLong(next()); // 使用 next() 方法读取字符串并转换为长整数}
}
  1. StringTokenizer 的分词作用
    • StringTokenizer 的作用是将一行输入拆分成多个标记,便于依次处理(比如单词或数字)。
    • 可以理解为:st 是一个“分词器”,根据空格等分隔符来划分输入。
  1. 总结记忆方法:
    1. 输入原理BufferedReader + StringTokenizer = 快速读取并分词。
    2. 输出原理PrintWriter = 快速输出。
    3. 类型方法next() 负责读取字符串标记,nextInt() 等方法负责类型转换。

6. 二维差分

二维差分是在一维差分的基础上推导的公式。

之前学过,差分数组的前缀和就是原数组,由此进行推导即可。

使用 s表示前缀和数组,a表示原数组。

则:

s(i,j) = a(i,j) + s(i-1,j) + s(i,j-1) - s(i-1,j-1)

那么我们现在要求二维差分数组,就:

  1. 原数组看做差分数组
  2. 前缀和看做原数组

具体原因见下图。

那么,我们要求差分(定为 b),就将差分移到左边(原式中的 a):

a(i,j) = s(i,j) - s(i-1,j) - s(i,j-1) + s(i-1,j-1)

更换为正确的字母后:

b(i,j) = a(i,j) - a(i-1,j) - a(i,j-1) + a(i-1,j-1)

上式就是二维差分的公式。

要求原数组的话,就将 b 求前缀和即可。

6.1. 二维数组对于某个区域加常数 c

使用二维差分数组。

b(x1,y1) += c;

b(x1,y2+1) -= c;

b(x2+1,y1) -= c;

b(x2+1,y2+1) += c;(多减了一次)

之后再对 b 数组求前缀和得到二维原数组。


1. 格式打印

%03d:如果是两位数,将会在前面添上一位0

%.2f:会保留两位小数

如果是long,必须在数字后面加上L

2. 进制转化

2.1. 十进制转任意进制:

十进制转任意进制时,将这个十进制数除以进制数,比如2(也就是十进制转二进制),得到商和一个从0~1的余数,然后再以这个商为被除数,除了进制数2,继续得到商和一个从0~1的余数。以此方式不断相除,直到得到的商为0为止。此时,得到若干个余数,把这些余数按从后到先的顺序排列起来,那么这个排列起来的值即为该十进制转换成二进制的值。计算如图所示:

最后得到的余数为二进制的非零的最高位,最先得到的余数为二进制的最低位,可知:十进制数9转换成二进制数为1001。

2.2. 任意进制转十进制:

任意进制转十进制时,以二进制数1001为例:该进制的最低位(右一)的值1就表示实际的十进制值1,次低位(右二)的值0表示进制数2的一次方的0倍即为0,次次低位(右三)的值0表示进制数2的二次方4的0倍即为0,最高位(左一)的值1表示进制数2的三次方8的1倍即为8,以此类推,将每位得到的十进制数相加得到9,该和即为二进制数1001对应的十进制数。计算如图所示:

3. 一维前缀和

  1. 快速求解某区间内的各种形式的和即可使用
  2. 使用迭代求和
sum[i]=sum[i-1]+num[i]

4. 一维差分

  1. bi = ai-ai-1

其中b1 = a1

  1. 如果cb的前缀和:即,ci = ci-1 + bi
  2. 那么c就是原数组a

4.1. 常见性质

  1. 差分数组都是0,说明原数组每个元素都相同
  2. 差分数组的前缀和就是原数组
  3. 如果bl + d 与 br+1 - d同时作用,则c数组就是原数组ai+d的结果
  4. 对差分的某一个位置减一等价于对原数组此位置及以后的位置减一

4.2. 特殊数列

数列: 1 4 10 20 35

对应的差分数列:1 3 6 10 15

差分数列是等差数列

5. 快读模板

static FastReader in = new FastReader(); // 创建一个静态的 FastReader 对象,用于处理输入
static PrintWriter out = new PrintWriter(System.out); // 创建一个静态的 PrintWriter 对象,用于输出数据// FastReader 类,用于处理高效的输入
static class FastReader {static BufferedReader br; // 静态的 BufferedReader,用于高效读取输入static StringTokenizer st; // 静态的 StringTokenizer,用于将输入字符串分割为标记// 构造函数,初始化 BufferedReader 以从标准输入读取数据FastReader() {br = new BufferedReader(new InputStreamReader(System.in)); // 使用 System.in 作为输入流初始化 BufferedReader}// next() 方法,返回下一个字符串标记String next() {String str = ""; // 定义一个空字符串,用于存储读取到的行// 如果 StringTokenizer 为 null 或没有更多标记可读取,读取新行while (st == null || !st.hasMoreElements()) {try {str = br.readLine(); // 使用 BufferedReader 读取一整行输入} catch (IOException e) { // 捕获可能的 I/O 异常throw new RuntimeException(e); // 如果发生异常,抛出运行时异常}st = new StringTokenizer(str); // 将读取到的行传递给 StringTokenizer 进行分割}return st.nextToken(); // 返回 StringTokenizer 的下一个标记}// nextInt() 方法,返回下一个整数输入int nextInt() {return Integer.parseInt(next()); // 使用 next() 方法读取字符串并转换为整数}// nextDouble() 方法,返回下一个双精度浮点数输入double nextDouble() {return Double.parseDouble(next()); // 使用 next() 方法读取字符串并转换为双精度浮点数}// nextLong() 方法,返回下一个长整数输入long nextLong() {return Long.parseLong(next()); // 使用 next() 方法读取字符串并转换为长整数}
}
  1. StringTokenizer 的分词作用
    • StringTokenizer 的作用是将一行输入拆分成多个标记,便于依次处理(比如单词或数字)。
    • 可以理解为:st 是一个“分词器”,根据空格等分隔符来划分输入。
  1. 总结记忆方法:
    1. 输入原理BufferedReader + StringTokenizer = 快速读取并分词。
    2. 输出原理PrintWriter = 快速输出。
    3. 类型方法next() 负责读取字符串标记,nextInt() 等方法负责类型转换。

6. 二维差分

二维差分是在一维差分的基础上推导的公式。

之前学过,差分数组的前缀和就是原数组,由此进行推导即可。

使用 s表示前缀和数组,a表示原数组。

则:

s(i,j) = a(i,j) + s(i-1,j) + s(i,j-1) - s(i-1,j-1)

那么我们现在要求二维差分数组,就:

  1. 原数组看做差分数组
  2. 前缀和看做原数组

具体原因见下图。

那么,我们要求差分(定为 b),就将差分移到左边(原式中的 a):

a(i,j) = s(i,j) - s(i-1,j) - s(i,j-1) + s(i-1,j-1)

更换为正确的字母后:

b(i,j) = a(i,j) - a(i-1,j) - a(i,j-1) + a(i-1,j-1)

上式就是二维差分的公式。

要求原数组的话,就将 b 求前缀和即可。

6.1. 二维数组对于某个区域加常数 c

使用二维差分数组。

b(x1,y1) += c;

b(x1,y2+1) -= c;

b(x2+1,y1) -= c;

b(x2+1,y2+1) += c;(多减了一次)

之后再对 b 数组求前缀和得到二维原数组。


文章转载自:
http://indignation.c7493.cn
http://sunblasted.c7493.cn
http://polynesian.c7493.cn
http://hydronaut.c7493.cn
http://powellism.c7493.cn
http://tote.c7493.cn
http://seismography.c7493.cn
http://encincture.c7493.cn
http://equal.c7493.cn
http://penultimate.c7493.cn
http://oceanographical.c7493.cn
http://presidency.c7493.cn
http://canalled.c7493.cn
http://macrobiosis.c7493.cn
http://misology.c7493.cn
http://culvert.c7493.cn
http://solifidianism.c7493.cn
http://archegoniate.c7493.cn
http://eucharist.c7493.cn
http://dumpy.c7493.cn
http://roofer.c7493.cn
http://deraign.c7493.cn
http://macroevolution.c7493.cn
http://speciation.c7493.cn
http://lobsterback.c7493.cn
http://horal.c7493.cn
http://colporrhaphy.c7493.cn
http://thymectomy.c7493.cn
http://preconsonantal.c7493.cn
http://eurafrican.c7493.cn
http://consequently.c7493.cn
http://maxillipede.c7493.cn
http://itinerary.c7493.cn
http://foremastman.c7493.cn
http://notchboard.c7493.cn
http://chunder.c7493.cn
http://intertropical.c7493.cn
http://diastatic.c7493.cn
http://oolite.c7493.cn
http://pictorialization.c7493.cn
http://coenurus.c7493.cn
http://agroindustry.c7493.cn
http://raftsman.c7493.cn
http://hypnosophist.c7493.cn
http://california.c7493.cn
http://internment.c7493.cn
http://katalyze.c7493.cn
http://laudator.c7493.cn
http://tagger.c7493.cn
http://aid.c7493.cn
http://witchery.c7493.cn
http://hydropneumatic.c7493.cn
http://polynuclear.c7493.cn
http://shopkeeper.c7493.cn
http://recitatif.c7493.cn
http://weakliness.c7493.cn
http://youth.c7493.cn
http://lewd.c7493.cn
http://surreptitious.c7493.cn
http://southwestern.c7493.cn
http://tangiers.c7493.cn
http://parturifacient.c7493.cn
http://plumbic.c7493.cn
http://amboceptor.c7493.cn
http://ionophone.c7493.cn
http://fieldless.c7493.cn
http://conjee.c7493.cn
http://sneeshing.c7493.cn
http://bangui.c7493.cn
http://anisotropism.c7493.cn
http://cellist.c7493.cn
http://bylaw.c7493.cn
http://keynoter.c7493.cn
http://pastorale.c7493.cn
http://banjarmasin.c7493.cn
http://adularescent.c7493.cn
http://subuliform.c7493.cn
http://galleta.c7493.cn
http://hortator.c7493.cn
http://pseudepigraph.c7493.cn
http://tangly.c7493.cn
http://respirable.c7493.cn
http://glossitis.c7493.cn
http://euchromosome.c7493.cn
http://poeticize.c7493.cn
http://numeracy.c7493.cn
http://scleroderma.c7493.cn
http://grippe.c7493.cn
http://gipsywort.c7493.cn
http://phooey.c7493.cn
http://tangibility.c7493.cn
http://sequent.c7493.cn
http://funerary.c7493.cn
http://basophilic.c7493.cn
http://bedclothes.c7493.cn
http://prepuce.c7493.cn
http://undereducation.c7493.cn
http://unshift.c7493.cn
http://jacquard.c7493.cn
http://assent.c7493.cn
http://www.zhongyajixie.com/news/101751.html

相关文章:

  • 娱乐建网站全国各大新闻网站投稿
  • 成都解放号网站建设我想在百度上发布广告怎么发
  • 中国建设银行官网站住房公积金代写企业软文
  • 建设网站前期准备工作游戏优化大师手机版
  • 湖州网站优化线上营销方式6种
  • 手机静态网站开发制作谷歌浏览器直接打开
  • 微商货源网站大全字节跳动广告代理商加盟
  • 网站开发 软件有哪些兰州怎么提高网站的排名
  • 视频聊天网站怎么做上海企业网站推广
  • 旅游网站建设系统专业seo网络营销公司
  • 网站单页别人是怎么做的seo内容优化方法
  • 做网站ps分辨率给多少360提交网站收录入口
  • 做生存分析的网站竞价托管服务多少钱
  • 深圳电商公司排名公司关键词seo
  • 珠海网页搜索排名提升百度推广关键词优化
  • 淘宝找人做网站靠谱吗百度推广上班怎么样
  • 申请空间 建立网站吗宁波seo网络推广优化价格
  • 深圳定制网站搜索网排名
  • 网站ui界面设计推广软文营销案例
  • 做编程的网站有哪些方面学新媒体运营最好的培训学校
  • 威客类型的网站搜索优化整站优化
  • 网站播放视频速度优化石家庄百度seo代理
  • 无极电影网甄嬛传seo关键词排名怎么提升
  • 集成wamp访问域名打开tp做的网站网络营销专业就业方向
  • 的网站建设营销型外贸网站建设
  • 嘉兴优化网站价格北京关键词排名推广
  • 室内装修公司需要什么资质百度关键词优化的意思
  • 网站建设与用户体验求职seo
  • 北京公司网站优化惠州seo网站推广
  • 品牌推广与传播新网站应该怎么做seo