- 博客(27)
- 收藏
- 关注
原创 UVA10375 选择与除法 Choose and divide 题解
题目链接:https://www.luogu.org/problemnew/show/UVA10375分析:这道题可以用唯一分解定理来做。什么是唯一分解定理?百度即可,这里也简介一下。对于任意一个自然数,都可以写成一些素数的幂次相乘的结果比如说,26=13∗226=13*226=13∗2,30=2∗3∗530=2*3*530...
2019-02-25 21:44:00 131
原创 UVA10375 选择与除法 Choose and divide 题解
题目链接:https://www.luogu.org/problemnew/show/UVA10375分析:这道题可以用唯一分解定理来做。什么是唯一分解定理?百度即可,这里也简介一下。对于任意一个自然数,都可以写成一些素数的幂次相乘的结果比如说,26=13∗226=13*226=13∗2,30=2∗3∗530=2*3*530=2∗3∗5.然后说详细做法:首先make一个素数表p...
2019-02-25 21:43:51 215
原创 欧几里得&&唯一分解入门题
题目描述:给出nnn个正整数X1,X2,X3...XnX_1,X_2,X_3...X_nX1,X2,X3...Xn,判断表达式X1/X2/X3/.../XnX_1/X_2/X_3/.../X_nX1/X2/X3/.../Xn是否可以通过添加括号使得结果为整数。分析:设表达式结果为E(x)E(x)E(x),那么一定存在E(x)=A/BE(x)=A/BE(x)=A/B,观察式子发...
2019-02-23 11:08:05 155
原创 欧几里得&&唯一分解入门题
题目描述:给出nnn个正整数X1,X2,X3...XnX_1,X_2,X_3...X_nX1,X2,X3...Xn,判断表达式X1/X2/X3/.../XnX_1/X_2/X_3/.../X_nX1/X2/X3/.../Xn是否可以通过添加括号使得结果为整数。分析:设表达式结果为E(x)E(x)E(x),那么一定存在E...
2019-02-23 11:08:00 140
原创 UVA816 Abbott的复仇 Abbott's Revenge
以此纪念一道用四天时间完结的题敲了好几次代码的出错点:(以下均为正确做法)memset初始化真正的出发位置必须找出。转换东西南北的数组要从0开始。bfs没有初始化第一个d是否到达要在刚刚取出队首时就判断,因为可能真正的起点和终点是一个。要判断v.x,v.y都是否在1~9之间。打印No Solution Possible前要...
2019-02-21 08:27:00 121
原创 UVA816 Abbott的复仇 Abbott's Revenge
以此纪念一道用四天时间完结的题敲了好几次代码的出错点:(以下均为正确做法)memset初始化真正的出发位置必须找出。转换东西南北的数组要从0开始。bfs没有初始化第一个d是否到达要在刚刚取出队首时就判断,因为可能起点终点是一个。要判断v.x,v.y都是否在1~9之间。打印No Solution Possible前要空两格?把路径放到vector里时不要漏放,错放。放进去后要倒...
2019-02-21 08:26:57 294
原创 洛谷P3150 pb的游戏(1) 题解
题目链接:https://www.luogu.org/problemnew/show/P3150分析:这道题是一道典型的入门博弈论。我们可以进行如下考虑:先引入一个奇偶的性质:奇数=奇数+偶数 ;偶数=偶数+偶数/奇数+奇数那么问题就简单了。我们可以先倒推一下:什么时候无路可走呢?答案是1,而1是一个奇数,那么我们现在需要...
2019-02-20 16:43:00 95
原创 洛谷P3150 pb的游戏(1) 题解
题目链接:https://www.luogu.org/problemnew/show/P3150分析:这道题是一道典型的入门博弈论。我们可以进行如下考虑:先引入一个奇偶的性质:奇数=奇数+偶数 ;偶数=偶数+偶数/奇数+奇数那么问题就简单了。我们可以先倒推一下:什么时候无路可走呢?答案是1,而1是一个奇数,那么我们现在需要做的就是让每次轮到自己的都是偶数。再观察上面两个性质:我...
2019-02-20 16:42:33 269
原创 结构体/构造函数初始化
struct ben{ int x,y; int turn; ben(int x=0,int y=0,int turn=0):x(x),y(y),turn(turn){}//定义变量时,如果没有给出变量的值,就将x,y,turn都赋值成0;否则按照实际的值来赋值。}past[105][105][5];vec.push(ben...
2019-02-20 09:27:00 159
原创 结构体/构造函数初始化
struct ben{ int x,y; int turn; ben(int x=0,int y=0,int turn=0):x(x),y(y),turn(turn){}}past[105][105][5];
2019-02-20 09:26:34 493
原创 UVA1103 古代象形符号 Ancient Messages 题解
题目链接:https://www.luogu.org/problemnew/show/UVA1103题目分析:我们可以先进行矩阵的还原for(int k=1;k<=4;k++){ a[i][++cnt]=(tmp>>(4-k))&1;}这种使用for语句的方法在其他题解内貌似没有提及,(但其实就是把anguei的化简了一下)这样就能复原出原始的数据(0...
2019-02-19 20:22:16 332
原创 UVA1103 古代象形符号 Ancient Messages 题解
题目链接:https://www.luogu.org/problemnew/show/UVA1103题目分析:我们可以先进行矩阵的还原for(int k=1;k<=4;k++){ a[i][++cnt]=(tmp>>(4-k))&1;}这种使用for语句的方法在其他题解内貌似没有提及,(但其实就是...
2019-02-19 20:22:00 353
原创 UVA297 四分树 Quadtrees 题解
题目链接:https://www.luogu.org/problemnew/show/UVA297附几道推荐题目(先完成再食用此题效果更佳)https://www.luogu.org/problemnew/show/UVA122https://www.luogu.org/problemnew/show/UVA699https://www.luogu.org/problemnew/show...
2019-02-16 21:37:16 197
原创 UVA297 四分树 Quadtrees 题解
题目链接:https://www.luogu.org/problemnew/show/UVA297附几道推荐题目(先完成再食用此题效果更佳)https://www.luogu.org/problemnew/show/UVA122https://www.luogu.org/problemnew/show/UVA699https://...
2019-02-16 21:37:00 170
原创 stack用法,queue用法,
stackstack 模板类的定义在头文件中。stack 模板类需要两个模板参数,一个是元素类型,一个容器类型,但只有元素类型是必要的,在不指定容器类型时,默认的容器类型为deque。定义stack 对象的示例代码如下:stack s1;stack s2;stack 的基本操作有:入栈,如例:s.push(x);出栈,如例...
2019-02-14 08:47:00 118
转载 stack用法,queue用法,
stackstack 模板类的定义在头文件中。stack 模板类需要两个模板参数,一个是元素类型,一个容器类型,但只有元素类型是必要的,在不指定容器类型时,默认的容器类型为deque。定义stack 对象的示例代码如下:stack s1;stack s2;stack 的基本操作有:入栈,如例:s.push(x);出栈,如例:s.pop();注意,出栈操作只是删除栈顶元素,并不返回...
2019-02-14 08:46:54 79
原创 UVA10763 交换学生 Foreign Exchange 题解
题目链接:https://www.luogu.org/problemnew/show/UVA10763题目分析:本题我首先想到的做法是把每一个数都map一下,然后互相判断,例如a,b两人准备交换,那么m[a]=b,m[b]=a,最后再判断如果m[m[a]]=a就行,但是因为一个学生在双方都同意的情况下可以先后与多个学生交换,所以我的做法是:先把每对学生都按照先小后大的顺序排好if(a[...
2019-02-11 21:29:20 462
原创 UVA10763 交换学生 Foreign Exchange 题解
题目链接:https://www.luogu.org/problemnew/show/UVA10763题目分析:本题我首先想到的做法是把每一个数都map一下,然后互相判断,例如a,b两人准备交换,那么m[a]=b,m[b]=a,最后再判断如果m[m[a]]=a就行,但是因为一个学生在双方都同意的情况下可以先后与多个学生交换,所以我的做...
2019-02-11 21:29:00 330
原创 读取一行多个字符串的方法
while(getline(cin,line)) { string x; flag1++; flag2=0; stringstream ss(line); while(ss>>x) { cout<<x<<' '; flag2++; t[flag1][flag2]=x; } cout<<endl; ...
2019-02-08 09:46:18 1515 2
原创 读取一行多个字符串的方法
while(getline(cin,line)) { string x; flag1++; flag2=0; stringstream ss(line); while(ss>>x) { cout<<x<<' '; flag2++; t[flag1][flag2]...
2019-02-08 09:46:00 608
原创 set用法
begin()–返回指向第一个元素的迭代器clear()–清除所有元素count()–返回某个值元素的个数empty()–如果集合为空,返回trueend()–返回指向最后一个元素的迭代器equal_range()–返回集合中与给定值相等的上下限的两个迭代器erase()–删除集合中的元素find()–返回一个指向被查找到元素的迭代器get_al...
2019-02-06 19:03:13 136
原创 set用法
begin()–返回指向第一个元素的迭代器clear()–清除所有元素count()–返回某个值元素的个数empty()–如果集合为空,返回trueend()–返回指向最后一个元素的迭代器equal_range()–返回集合中与给定值相等的上下限的两个迭代器erase()–删除集合中的元素fin...
2019-02-06 19:03:00 65
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人