自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (1)
  • 收藏
  • 关注

原创 7/21 F 解题报告

7/21 F 解题报告没什么要说的,对两个列表中的第一个进行二分即可,因为第一个本来就是升序,不需要排序。对第二个列表中的每个元素,在第一个表二分查。 以下是代码(可直接AC):#include <iostream>#include <algorithm>using namespace std;int a[50001],b[50001];int main(){ int l,n,m,

2015-07-22 09:23:16 374

原创 7/21 E 解题报告

7/21 E 解题报告这题不需要什么算法,对数学熟悉的就很容易想到。求N^N的最后一位,乘法的末位是末位相乘的末位。于是,末位变化是有规律的。直接枚举0-9的规律即可。比如7-9-3-1这样变化。 以下是代码(可直接AC):#include <iostream>using namespace std;int main(){ int t,dig,pos; long long n;

2015-07-22 09:19:26 357

原创 7/21 D 解题报告

7/21 D 解题报告这题有点不好理解,意思是每个人只能拿一个整片食物的一部分,而且不能拿两种味道,求每个人都拿到一样体积的食物的情况下最大体积多少。让最大体积和最小体积的食物作为端点进行二分。 以下是代码(可直接AC):#include <iostream>#include <cstdio>#include <cmath>#include <iomanip>#define pi acos

2015-07-22 09:13:45 321

原创 7/21 C 解题报告

7/21 C 解题报告这个题可以用数学方法,找最小值,求导后在区间内只有一个零点,和解方程又是一样的。如果直接分三个点后去查的话就有一些误差。 以下是代码(可直接AC):#include <iostream>#include <cmath>#include <iomanip>using namespace std;int main(){ int t; long long y

2015-07-22 09:07:48 317

原创 7/21 B 解题报告

7/21 B 解题报告仍然大水,求解一个方程,二分经典用法。 以下是代码(可直接AC):#include <iostream>#include <cmath>#include <iomanip>using namespace std;int main(){ int t; long long y; long double res; long double tm

2015-07-22 09:01:38 286

原创 7/21 A 解题报告

7/21 A 解题报告A题是说三个序列ABC,每个都有很多数,从每个序列中找出一个数相加等于给定的X。 这和紫书中的一个题类似,书上是4个集合找4个数相加为0。 基本方法就是把两个序列相加合并为一个和的集合,之后对这个集合排序并二分查找就有了。最终是nlogn的复杂度。如果二分的是另一个序列,则复杂度是n²logn,肯定不划算。 以下是代码(可直接AC):#include <iostream>

2015-07-22 08:57:51 380

原创 第三章:UVa1588 解题报告

UVa1588 解题报告这道题可以直接模拟。因为齿轮是条状,高度只有两种,所以只要匹配字符串就可以了。两个字符串的相交区域计算高度相加是不是大于3,小于3便是合法的配对。处理A、B两个字符串时枚举B在总长中的起点和B的自身下标后进行匹配即可。以A的0下标为原点,B的0下标设为起点,这样B的起点从负数-B.length()开始,一直到A.length()+B.length(),然后B在A上左右滑动,寻

2015-05-06 00:01:54 2034

原创 第三章:UVa227 解题报告

UVa227 解题报告这是一道final题,但是没有什么算法难度。只需要模拟即可,但是如果用std::getline(),配合string输出会WA,具体原因我也没有探究清楚,如果改为gets(),配合char数组就没有问题。注意不合法操作的边界判断。 以下是代码(可直接AC):#include <iostream>#include <string>#include <cstring>#in

2015-05-03 10:25:55 372

原创 CODEFORCES 535B 解题报告

CODEFORCES 535B 解题报告仍然是水题,但是还是有可以说的地方。主要思路就是dfs可重排列。4,7组成的幸运数字,在n位数字的构造方式有2^n种,而数据是最多9位,则枚举只有512种,n^2的复杂度足矣。只枚举相应位数的4、7排列,前面的个数用2^n累加。只要遵循先选4再选7即可构造字典顺序,然后查找相应数。 以下是代码(可直接AC)#include <iostream>#inclu

2015-04-23 01:18:04 519

原创 CODEFORCES 535A 解题报告

CODEFORCES 535A 解题报告本题仍为水题,只要按照英语中的数字命名法来就可以了,STL简化一下操作,把基本元素枚举出来就可以了。map1~10,20,30,…,90。映射为单词。之后拆分十位和个位,用连字符拼接即可。 以下是代码(可直接AC):#include <iostream>#include <string>#include <map>using std::cin;usin

2015-04-23 01:07:39 334

原创 CODEFORCES 534A 解题报告

CODEFORCES 534A 解题报告这是日常训练赛的水题。本题属于SPJ,任意符合规则的序列都可通过。进行探究后可以发现,从n>=5时就可以将所有学生安排在同一教室,方法是构造奇偶序列,如1 3 5 2 4 6这样的即可满足条件。n<5时手算解,特判即可。 以下是代码(可直接AC):#include <iostream>using std::cin;using std::cout;int m

2015-04-23 01:02:27 454

原创 第三章:UVa1585 解题报告

UVa1585 解题报告这是一道非常入门的题,新手可以很容易的做出来。不用说太多,原理就是扫描一次string,遇到O则加分并且将用于记录当前O的分数大小的变量cnt加一,遇到X则将cnt归零(因为我计数时采用++cnt的形式)。 以下是代码(可直接AC):#include <iostream>#include <string>using std::cin;using std::cout;

2015-04-23 00:52:18 338

原创 第三章:UVa1586 解题报告

UVa1586 解题报告本题可以使用STL来简化操作。我使用扫描字符串一次并处理数字后相乘的办法将所有的C、H、O、N分成小块,分别计算分子量之后相加。扫描字符串时只关注当前下标i对应的s[i]是不是字母,如果是,而且字母后面是数字,就提取数字后和字母的分子量相乘,加到总分子量中。如果s[i]是字母,但s[i+1]也是字母,则直接将s[i]的分子量加到总量中。在进行字符串边界处理时用了min函数,而

2015-04-23 00:47:52 611

原创 第三章:UVa1225 解题报告

UVa1225 解题报告这是一个考察数组操作和数字分解的十分入门的问题。基本方法是,注册一个10个int空间的数组cnt[10],枚举当前数,将其每位分解后在cnt中统计个数。分解时采用K%10,K/10的办法,并在当前数为9、99、999、9999时将记录数的位数的变量d加一。 以下是代码(可直接AC):#include <iostream>#include <string>#includ

2015-04-23 00:12:07 358

原创 第三章:UVa455 解题报告

UVa455 解题报告这是一个数周期串的问题,可以枚举周期,这样方便一些,枚举周期之后进行字符检查,看看其余字符是否符合周期规律,找到之后输出当前周期后立刻跳出。按照题目大意,周期可以为字符串的自身长度。 注意,此题卡格式,最后一行没有空行,此外,答案要先记录下来,打印的时候每个答案后面空一行。 以下是代码(可直接AC):#include <iostream>#include <string>u

2015-04-23 00:00:42 563

OpenSceneGraphTutorial.pdf

Open Scene Graph Tutorial.pdf,Open Scene Graph 的教程

2020-03-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除