a4

打印系统开发(61)——A4纸尺寸

杀马特。学长 韩版系。学妹 提交于 2019-12-12 14:31:02
A4纸尺寸 A4纸是ISO 216(纸张国际化标准尺寸),是世别界上大多数国家所使用的A4纸尺寸。目前中国采用的是ISO 216标准,以规范纸大小,与国际通用。 A4纸尺寸 A4纸尺寸:210×297; A3纸尺寸:297×420; A2纸尺寸:420×594; A1纸尺寸:594×841; A0纸尺寸:841×1189; 备注:长(mm)×宽(mm) 单位:毫米(mm) A4纸尺寸大小图解 A4纸大小记忆方法 通过上图各大小型号的纸张长宽度数据对比,我们可以看出纸张大小变化的规律,如此我们得出记忆方法如下。 方法: A0纸长度方向对折一半后变为A1纸;A1纸长度方向对折一半后变为A2纸;A2纸长度方向对折一半后变为A3纸,A3纸长度方向对折一半后变为A4纸。 A4规格的纸是我们日常生活中最常用到的,一般只要记住A4是210毫米×297毫米,我们就很快推理出其它规格纸的大小尺寸。 A4纸的像素和分辨率 根据A4纸尺寸是210毫米×297毫米,而 1英寸=2.54厘米 ,我们可以得出当分辨率是多少像素时,得出A4纸大小尺寸为多少毫米。如下是我们较常用到的规格尺寸: 当分辨率是72像素/英寸时,A4纸像素长宽分别是842×595; 当分辨率是120像素/英寸时,A4纸像素长宽分别是2105×1487; 当分辨率是150像素/英寸时,A4纸像素长宽分别是1754×1240;

HGOI 20191106 题解

廉价感情. 提交于 2019-12-03 17:17:06
HGOI20191106 Solution Problem A 旅行者 有$n$种转移装置,每种转移装置本质相同,每种装置可以前进$a_i$单位,但只有$b_i$个。 从初始坐标为$0$出发,途中不能经过$c_1,c2,...,c_m$中的任意一个点。 走到$\sum\limits_{i = 1}^n a_ib_i$位置的方案数$mod 10^9 + 7$的值。 对于$100\%$的数据满足$1 \leq n \leq 6 , 1 \leq m \leq 10^5 ,0<c_i < \sum\limits_{i = 1}^n a_ib_i$   Solution :     由于每个装置本质相同,那么我们只需要记录当前使用的转移装置数作为状态即可。     这样定义状态的总状态数时$\prod_{i = 1}^n b_i \leq 13^6 = 4826809$     注意,由于有$m$点不能走,还需要开一个$hash$存当前值能不能走,特殊判掉即可。     转移的时候枚举当前通过那个转移装置走到当前位置,转移时间复杂度为$O(n)$     请注意,本题的模数为$10^8 + 7$,您是否数错了零?     所以,本题的总时间复杂度是$O(n\prod\limits_{i=1}^{n} b_i)$ # pragma GCC optimize(3) # include<bits

初识Spring

有些话、适合烂在心里 提交于 2019-12-02 05:15:56
什么是Spring: Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。 Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。 简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级 开源框架。 特点: 1.方便解耦,简化开发 通过Spring提供的IoC容器,我们可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。有了Spring,用户不必再为单实例模式类、属性文件解析等这些很底层的需求编写代码,可以更专注于上层的应用。 2.AOP编程的支持 通过Spring提供的AOP功能,方便进行面向切面的编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付。 3.声明式事务的支持 在Spring中,我们可以从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活地进行事务的管理,提高开发效率和质量。 4.方便程序的测试 可以用非容器依赖的编程方式进行几乎所有的测试工作,在Spring里,测试不再是昂贵的操作,而是随手可做的事情。例如:Spring对Junit4支持,可以通过注解方便的测试Spring程序。 5.方便集成各种优秀框架 Spring不排斥各种优秀的开源框架,相反

Python:itertools库的使用

半世苍凉 提交于 2019-11-29 00:19:24
问题13:如何在for语句中迭代多个可迭代的对象 from random import randint a1 = [randint(10, 50) for _ in range(5)] a2 = [randint(10, 50) for _ in range(5)] a3 = [randint(10, 50) for _ in range(5)] a4 = [] 例一:并行操作:在一个for循环中实现多个列表的并行迭代; 方案:使用内置函数zip,将多个迭代对象合并,每次迭代返回一个元组 案例:对3个列表同时迭代,计算各列表对应元素的和; #方法一:直接用for循环引用 #弊端:只能支持引索操作:a1[],若操作对象是生成器,则不能实现; for i in range(5): t = a1[i] + a2[i] + a3[i] a4.append(t) print(a4) #输出:[84, 67, 85, 88, 82] #方法二:用内置函数zip() for x, y, z in zip(a1, a2, a3): a4.append(x + y + z) print(a4) #输出:[44, 72, 73, 94, 130] 例二:川行操作:在一个for循环中实现多个列表的川行迭代; 方案:使用标准库itertools.chain,它能使多个迭代对象连接 itertools