算法训练
Gardenia Minwentel
这个作者很懒,什么都没留下…
展开
-
分支与循环--洛谷练习
P1423 小玉在游泳题目描述小玉开心的在游泳,可是她很快难过的发现,自己的力气不够,游泳好累哦。已知小玉第一步能游2米,可是随着越来越累,力气越来越小,她接下来的每一步都只能游出上一步距离的98%。现在小玉想知道,如果要游到距离x米的地方,她需要游多少步呢。请你编程解决这个问题。输入输出格式输入格式:一行内输入一串整数,以0结束,以空格间隔。输出格式:一行内倒着输出这一串整数,以空...原创 2019-07-01 20:19:25 · 990 阅读 · 0 评论 -
神奇的幻方(2015NOIP)
链接:https://ac.nowcoder.com/acm/contest/263/D来源:牛客网神奇的幻方题目描述幻方是一种很神奇的 N*N 矩阵:它由数字 1,2,3,…N x N 构成,且每行、每列及两条对角线上的数字之和都相同。当 N 为奇数时,我们可以通过下方法构建一个幻方:首先将 1 写在第一行的中间。之后,按如下方式从小到大依次填写每个数 K (K=2,3,…,N x...原创 2019-07-23 14:39:09 · 443 阅读 · 0 评论 -
P3952 时间复杂度(2017NOIP)
P3952 时间复杂度链接:https://ac.nowcoder.com/acm/contest/265/E来源:牛客网题目描述小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会来啦!下面请你编写程序来判断小明对他的每个程序给出的时间复杂度是否正确。A++语言的循环结构...原创 2019-07-23 14:21:15 · 300 阅读 · 1 评论 -
P1540 机器翻译
P1540 机器翻译题目背景小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章。题目描述这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换。对于每个英文单词,软件会先在内存中查找这个单词的中文含义,如果内存中有,软件就会用它进行翻译;如果内存中没有,软件就会在外存中的词典内查找,查出单词的中文含义然后翻译,并将这个单词和译义放入内存,以备后续...原创 2019-07-23 14:22:34 · 137 阅读 · 0 评论 -
STL中常用容器总结
1.vector(向量)(底层是数组)向量没有确定数据类型所以向量可以是多种数据类型,但是注意一个向量对象只能有一种数据类型,可以构造二维向量(二维数组)比如二维整型向量vector ,但值得注意的是二维向量的大元素和小元素(行元素和最小元素)都是一个向量可以不分配大小而是通过数据的规模分配大小这里介绍整型向量的常用方法函数(其他类型的可以自行通过转换类型达到相同的效果):vector a(...原创 2019-07-17 20:08:34 · 2159 阅读 · 0 评论 -
洛谷——简单模拟
P1003 铺地毯题目描述为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯。一共有 nn 张地毯,编号从 11 到nn。现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后铺设,后铺的地毯覆盖在前面已经铺好的地毯之上。地毯铺设完成后,组织者想知道覆盖地面某个点的最上面的那张地毯的编号。注意:在矩形地毯边界和四个顶点上的点也算被地毯覆盖...原创 2019-07-07 15:24:15 · 403 阅读 · 0 评论 -
费马小定理、欧拉定理
这里介绍一种分数取模的代码:(参考)假设要求 (1/m) mod p这里要引用小费马定理 a^p-1 mod p = 1 mod p (有兴趣的可以百度查下证明过程) ,这里对这个公式做点改动—> ap-1=ap-2 *a , 把 a 移到上述等式的右边有 a^p-2 mod p = a^-1 mod p , 那么这里,a^-1 mod p 就是 我们要求的,这个值的结果...原创 2019-07-07 10:37:13 · 734 阅读 · 0 评论 -
洛谷训练—交叉模拟
P1031 均分纸牌有 N 堆纸牌,编号分别为 1,2,…, N。每堆上有若干张,但纸牌总数必为 N 的倍数。可以在任一堆上取若于张纸牌,然后移动。移牌规则为:在编号为 1 堆上取的纸牌,只能移到编号为 2 的堆上;在编号为 N 的堆上取的纸牌,只能移到编号为 N-1 的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。现在要求找出一种移动方法,用最少的移动次数使每堆上纸牌数都一样多。...原创 2019-07-13 08:20:54 · 274 阅读 · 0 评论 -
洛谷练习综合二
P1014 Cantor表题目描述第一种:#include <iostream>using namespace std;int main(){ long long N; long long sum=1,a,b,k=1,m;//a代表分子,b代表分母,k代表斜着看(对角线)的行数 cin>>N; //确定在(斜着看的)第几行 while(sum&...原创 2019-07-06 15:22:22 · 243 阅读 · 0 评论 -
多个方法求素数
定义筛法原理:根据定义来找素数。能够被整除就不是素数bool isprime(int n)//是则返回真,不是则为假 { int i=2;//1因为我们人为定义它不是素数,而且1也会陷入死循环 while (i<=sqrt(n)&&n%i!=0) ++i;//当它不超过n的平方根时,用n一个一个试; if(i<=sqrt(n))return 0;//没...原创 2019-07-05 09:17:41 · 169 阅读 · 0 评论 -
洛谷练习综合一
P1478 陶陶摘苹果(升级版)题目描述又是一年秋季时,陶陶家的苹果树结了n个果子。陶陶又跑去摘苹果,这次她有一个a公分的椅子。当他手够不着时,他会站到椅子上再试试。这次与NOIp2005普及组第一题不同的是:陶陶之前搬凳子,力气只剩下s了。当然,每次摘苹果时都要用一定的力气。陶陶想知道在s<0之前最多能摘到多少个苹果。现在已知n个苹果到达地上的高度xi,椅子的高度a,陶陶手伸直的最...原创 2019-07-05 09:11:22 · 253 阅读 · 0 评论 -
递归与函数
P1217 [USACO1.5]回文质数 Prime Palindromes题目描述因为 151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数。写一个程序来找出范围 [a,b] (5 \le a < b \le 100,000,000)a,b( 一亿)间的所有回文质数。输入输出格式输入格式:第 1 行: 二个整数 a 和 b .输出格式:...原创 2019-07-03 21:13:40 · 257 阅读 · 0 评论 -
字符串反转
P1553 数字反转(升级版)题目描述给定一个数,请将该数各个位上数字反转得到一个新数。这次与NOIp2011普及组第一题不同的是:这个数可以是小数,分数,百分数,整数。整数反转是将所有数位对调;小数反转是把整数部分的数反转,再将小数部分的数反转,不交换整数部分与小数部分;分数反转是把分母的数反转,再把分子的数反转,不交换分子与分母;百分数的分子一定是整数,百分数只改变数字部分。整数新数也应...原创 2019-07-03 08:44:57 · 135 阅读 · 0 评论 -
leetcode 144周赛
1108.IP 地址无效化给你一个有效的IPv4地址address,返回这个 IP 地址的无效化版本。所谓无效化IP 地址,其实就是用"[.]"代替了每个"."。示例 1:输入:address = "1.1.1.1"输出:"1[.]1[.]1[.]1"示例 2:输入:address = "255.100.50.0"输出:"255[.]100[...原创 2019-07-08 14:41:59 · 106 阅读 · 0 评论 -
牛客练习赛49
A题链接:https://ac.nowcoder.com/acm/contest/946/A来源:牛客网时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 524288K,其他语言1048576K64bit IO Format: %lld题目描述筱玛是一个热爱地理的好筱玛。最近,在《地理II》作业本上,筱玛学到了“贝塔指数”的概念:#include<bits/s...原创 2019-07-08 08:33:50 · 185 阅读 · 0 评论 -
桶排序
大致思想:桶排序的基本思想是假设数据在[min,max]之间均匀分布,其中min、max分别指数据中的最小值和最大值。那么将区间[min,max]等分成n份,这n个区间便称为n个桶。将数据加入对应的桶中,然后每个桶内单独排序。由于桶之间有大小关系,因此可以从大到小(或从小到大)将桶中元素放入到数组中。分步骤图示说明:设有数组 array = [63, 157, 189, 51, 101, 4...原创 2019-10-01 21:04:52 · 162 阅读 · 0 评论