Myy Blog

生命不息,ac不止

bnuoj配置

解决bnuojv3开源项目配置的有关问题

写作初衷 最近一段时间一直在尝试部署bnuoj的开源项目,期间遇到了很多问题(作为一个以前从未接触过php以及sql的人. 已经料到会遇到很多问题),并通过各种途径解决。在此记录一下遇到的问题和解决方案,以便以后查看。感谢bnuoj开源项目的作者们。 零 bnuoj是用php写成的,前端bootstrap,数据库用的ezsql的mysql实现。 我们最初选用的平台是Ubuntu15.10(...

浅谈UEFI启动

关于UEFI、GUID的一篇非正式简介

先说一下BIOS BIOS,基本输入输出系统(Basic Input Output System).它在我们所熟知的操作系统启动之前就已经开始发挥作用,它负责在启动时对计算机硬件系统进行“自检”,若发现问题他会给出提示。之后它会从指定位置向内存载入操作系统的引导程序。 BIOS是一种“固件”,它通过一定方式固化在一个芯片上,这个芯片不像U盘一样可以轻松改写其中的内容,而是要采用一定方法。...

UVALive 3295-Counting Triangles

数三角形

题目出处 UVALive 3295 题目大意 给定m,n,求m * n的网格中,共有多少不同的格点三角形.两个三角形至少有一个顶点不一样则视为不同. 题目分析 这道题挺有意思,关键在于并不是随便三个点就能组成三角形,判断是否共线是本题关键. 我的思路是: 每个三角形都对应唯一的 最小外接矩形 只要计算每个子矩形内接三角形有多少,再加起来就是总共的三角形数 相似的子矩...

CodeForces 252C-Points on Line

水题

题目出处 CodeForces 252C 题目大意 给出n个数,从中取三个数使最大数和最小数的差不超过d,问有多少种取法. 题目分析 保证数列有序的情况下,对每个数向后搜索到最大的同它距离不超过d的数,则中间有几种取法可由组合数求出. 测试样例 Input 1 2 4 2 -3 -2 -1 0 Output 1 2 Input 1 2...

CodeForces 252B-Unsorting Array

题目出处 CodeForces 252B 题目大意 给出一组数,问能否交换其中两个不相等的数,使得数组变为无序.能则输出两数位置,不能则输出-1. 题目分析 这道题我的思路是找到一组a,b,c使a < b,b < c,那么交换a、b;或者使a < c,b < c,那么交换b、c.因此我从前向后遍历一次,又从后向前遍历一次.均没有满足情况的便输出-1. 测试...

CodeForces 252A-Little Xor

亦或性质考察

题目出处 CodeForces 252A 题目大意 给出n个数,取其中连续的一段算亦或值,求结果的最大值. 题目分析 没什么难点,注意到亦或的可交换性,只需把num[n]预处理成从第一个元素到第n个元素的亦或结果即可. 测试样例 Input 1 2 5 1 2 1 1 2 Output 1 3 Input 1 2 4 4 2 4 8 ...

CodeForces 252E-Number Transformation

数论+dp

题目出处 CodeForces 252E 题目大意 给出三个数,a,b,k.现需要将a变成b,可选两种操作: a=a-1; a=a-(a mod x). 2 <= x <= k (每次操作取的x值可以不同) 1 <= b <= a <= 10 ^ 18 , 2 <= k <= 15 问最少需要多少次操作。 ...

CodeForces 252D-Playing with Permutations

考察读题的水题

题目出处 CodeForces 252D 题目大意 给出序列qn,pn,以及操作次数k,问是否能通过k次操作使序列:1,2,…,n变成序列p1,p2,…,pn 一次操作是指下列两种操作中的任意一种(a指原序列,b指操作后序列): b[ i ] = a[ q[i] ]; b[ q[i] ] = a[ i ]. 一旦某次操作后序列与pn相同,那么不能继续再进行操作. ...

Hello github!

记Github Page搭建成功

历史 有在github上搭建静态技术博客的想法已经很久了。在2014年的时候就有过这样的想法,当时没能成功搭起来,只是注册了github的账号,大致了解了github是干什么的,甚至连它怎么用都不知道╮(╯_╰)╭ 按照教程一步步的走,最后还是做出来了一个helloworld,在当时也算是有所安慰吧。这个页面一放就是大半年。最近下决心开始写题解整理算法,才又想起这个事情,于是再次开始学习...