PROM1003-新对称素数问题
新对称素数问题需要解决的问题
Python中的连续输入
C语言中常用while(scanf(“%d”,x) !=EOF)判断输入是否碰到文件结束符(EOF)
两种方法可实现对文件结束符(EOF)的判断
Python实现方式一12345import sys for line in sys.stdin: a=int(line) if a!=0: print(a)
Python实现方式二12345try: while True: s = input()except EOFError: exit(0)
题目描述提交代码前几次提交就是没有考虑到连续输入的问题,加上上述的实现方式之后,就可以解决该问题
1234567891011121314151617181920212223242526272829303132333435363738def prime(num): if num < 2: return False for i in range(2, int(num**0.5) + 1): ...
PROB1012-最小质数合数之和问题
最小质数合数之和问题题目描述:查找大于正整数n的最小质数和最小合数之和。
质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
合数是指在大于1的整数中除了能被1和本身整除外,还能被其他数(0除外)整除的数。
输入:一个正整数n,题目保证1≤n≤1000000000
输出:一个正整数,表示大于正整数n的最小质数和最小合数之和。
样例输入:11
样例输出:16
样例输入:196
样例输出:1195
注释:对于第一组样例:n为1的情况下,最小素数为2,最小合数为4,因此答案为2+4=6。
第一次提交12345678910111213141516171819202122232425def isprime(num): if num < 2: return False for i in range(2, int(num**0.5) + 1): if num % i == 0: return False return Truen = int(input())nums = []tag = 0n = n ...
操作系统复习笔记
准备复试 暂停更新2022.3.20
操作系统第一章 操作系统概述1.0 章节框架图
操作系统是计算机系统中的系统软件
操作系统地位、作用操作系统的设计目标
有效性
方便性
可扩充
开放性
中断中断是主机接收到外部信号或者系统发生随机性事件,停止当前执行的程序,转而处理这一事件,待事件处理完成,主机又可以回到原来的断点继续工作。中断是让操作系统内核夺回CPU使用权限的唯一途径。操作系统是由中断驱动的。
用户态转到核心态(内核态)的三种方式
程序请求操作系统服务,执行系统调用。
程序运行时产生外中断事件(比如I/O操作完成),运行程序被中断,转向中断程序处理
在程序运行时发生内中断事件(异常),运行程序被打断,转向异常处理程序工作
用户态也叫目态,即用户进程运行时处理器的状态。
核心态也称管态,即操作系统的自身核心部分及部分系统进程的程序运行时的处理器状态
操作系统内核所运行的模式。运行在该模式的代码,可以无限制地对系统存储、外部设备进行访问。
特权指令只能由操作系统调用而不能被用户调用的指令
核心态转到用户态的方式中断类型
外中断
也叫中断,狭义上的中断。外中断与当前执行的指令无 ...
LeetCode509-斐波那契数
题目斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:
12F(0) = 0,F(1) = 1F(n) = F(n - 1) + F(n - 2),其中 n > 1
给定 n ,请计算 F(n) 。
解题思路方法一 递归12345678class Solution: def fib(self, n: int) -> int: if n==0: return 0 elif n==1: return 1 else: return self.fib(n-1)+self.fib(n-2)
方法二 动态规划利用滚动数组思想
123456789if n<2: return np,q,r = 0,1,1for i in range(2,n): p = q q = r r = p + q return r
LeetCode20-有效的括号
题目给定一个只包括 ‘(‘,’)‘,’{‘,’}‘,’[‘,’]' 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
解题思路匹配失败的情况
左括号多了 例如
右括号多了 例如
括号不匹配 例如
排除掉上面的是那种匹配失败的情况之后,剩余的都是匹配成功
思路核心思想是利用栈去匹配括号
用字典构造一个哈希表,表示右括号对应的左括号
1dic = {'}':'{',']':'[',')':'('}
用一个字符串表示左括号
1kuohao = '{(['
我的解法1234567891011121314151617181920212223242526272829303132class Solution: ...
Docker学习笔记
Docker学习笔记作者:郭寅之B站/Youtube:Clay_Guo
邮箱:guoyinzhi@foxmail.com
一.Docker介绍1.1 引言
1.我本地运行没有问题,
环境不一致会出现问题
2.哪个哥们又写死循环了,怎么这么卡。
在多用户的操作系统下,会相互影响
3.淘宝在双十一的时候,海量并发的解决方案,用户量暴增的情况下
运维成本过高的问题
4.学习一门技术,学习安装成本过高
安装软件成本过高
1.2 Docker的由来
一帮年轻人创业,创办了一家公司,2010年的专门做PAAS平台
到2013年的时候,亚马逊,微软,谷歌都开始做PAAS平台
2013年,将公司的核心技术对外开源,核心技术就是Docker
到了2014年的时候,这家公司得到了C轮融资$4000w
到了2015年的时候,得到了D轮融资 $9500w 用于全神贯注的维护Docker
所罗门 主要作者之一
Docker的作者已经离开了维护Docker的团队。
1.3 Docker思想
1.集装箱
docker会将所有需要的内容放到不同的集装箱 ...
PicGo+Typora搭建个人笔记系统
PicGo+Typora搭建个人笔记系统
引言
从开始读书的时候,笔记就是我必不可少的一样东西。大学的学习中,每门课都不能缺少笔记。在pc端中,常见的笔记软件有word,印象笔记,OneNote,Sublime Text,Notepad++等。在大学的时候,一次偶然的机会,听学长介绍了markdown以及一款写markdown的软件Typora,至此开始使用markdown记录自己的笔记,并且很多平台,例如微信公众号,知乎等都已经支持markdown语法了。但是在后续的使用过程中,记笔记的同时经常需要放置图片,这时会让我在与其他人共享的时候出现图片无法访问的情况,这是由于图片粘贴过来之后是存储在本地的,而他人在自己的电脑中是无法访问到我的图片的。后来我采取的方案是使用云商提供的对象存储。我使用过的有阿里云、腾讯云以及七牛云。但是后来发现这些云商提供的服务到后面需要收费。因此我又开始琢磨,我自己正好有几台云服务器,为啥不在我的云服务器上面去搭建一个图床呢,这个时候经过一番资料的收集以及多次尝试,最终我敲定了我自己的方案,在我的云服务器上面搭建一个个人图床,采用的模板是Chevereto[ ...
Git使用教程
Git与GitHub使用教程
很久很久以前,进行软件项目开发的时候,可能是一个人独自开发,亦或是进行复制粘贴每天写好的项目模块。随着软件项目的庞大,一个项目可能就不会再由一个人独自开发了,往往就需要团队之间进行协作开发,因此,协议团队协作开发版本管理的软件就应运而生了。常见的有SVN[1]、Git[2]。代码托管网站也有很多,例如Github[3]以及国内的Gitee[4]。本文以GitHub+Git来详细说明如何用Git来管理自己的项目以及如何与他人进行团队协作开发。
需要准备的东西
Git
GitHub注册好账号
使用指南git更新本地分支与远程同步
进入到工程目录文件
1cd project
选择一个分支
1git checkout dev
拉取远程代码到本地
1git pull -p
第三步等同于下面的命令
12git fetch --prune origin git fetch -p
为本地项目进行初始化初始化时,使用-b参数指定分支
1git init -b main
然后需要将本地与远程仓库进行关联绑定
1git remote add orig ...
Hexo博客搭建教程
Hexo博客搭建教程
又一次的搭建自己的hexo博客,这里记录一下hexo博客搭建的教程。之前的博客是部署到Github上的,奈何Github访问速度有点缓慢,因此本次博客搭建是部署到国内的Gitee上,这样加快了博客的访问速度。
不出意外的话,这次部署之后,以后都会用这个博客了,Butterfly主题也非常的精美。
准备内容
git 下载地址
node 下载地址
注意Node的安装版本,不要安装14以及更高,可能会出现不兼容的各种问题
Gitee账号注册 地址
测试[1]
Git安装一键式傻瓜安装,安装完成后在任意界面右击鼠标,即可查看到git操作指令
点击Git Bash Here,即可出现Git的命令行窗口,这是类似于Linux操作系统的命令行窗口的。
输入git version即可查看我们的Git版本
类似上图即可说明Git安装成功,进行下一步操作。
Node安装下载地址传送门
安装一件傻瓜式安装
校验安装完成之后在Git Bash界面输入node -v
出现上图显示的结果即为安装成功,进入下一步。
Hexo安装与使用安装接下来我们可以安装生成网站的关键——H ...
微信小程序中使用Echarts
前言
因为工作中需要,需要在微信小程序端中复刻web端的一些功能,在图表这一块,web端使用的是Echarts组件,经过调研发现,Echarts同样是支持微信小程序的,这里进行一个简单的记录。
准备微信开发者工具微信开发者平台自行下载
Echarts微信版下载地址:https://github.com/ecomfe/echarts-for-weixin
我们主要用的就是其中的ec-canvas文件夹
Ps:官方的README文档其实已经写的非常详细了,但是很有可能大家会发现自己的这里没有任何图片显示出来,别着急,往下看。
使用1.引入ec-canvas复制到小程序的根目录
2.新建页面在Pages文件夹下文件夹echarts,然后在echarts文件夹上右击,新建pages
3.引入组件在echarts.json文件中,将文件夹引入
注意其中的路径要和自己的一致
4.创建图表在echarts.wxml文件中,写入以下内容:
123<view class="container"> <ec-canvas id="mychart- ...