自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 洛谷 P5594 【XR-4】模拟赛

思路:关于STL中set容器的使用#include<bits/stdc++.h>using namespace std;const int MAXSIZE = 1010;int a[MAXSIZE][MAXSIZE];set<int> b[MAXSIZE];//set容器中每个值都唯一int main(){ int n, m, k; cin >&...

2019-10-21 18:45:25 358

原创 数据结构 第六章 树和二叉树

思路:生成index的父节点序号数组#include<bits/stdc++.h>using namespace std;const int MAXSIZE = 110;int a[MAXSIZE];int k, n, q;void func(int index, int p, int now) {//p记录index的父节点,now记录index在父节点下的序号 a[...

2019-10-16 22:23:13 388

原创 洛谷 P2907 [USACO08OPEN]农场周围的道路Roads Around The Farm

思路:深度优先搜索(dfs),递归#include<bits/stdc++.h>using namespace std;typedef long long ll;ll dfs(ll n,ll k) { if ((n + k) % 2 == 1||n<=k)return 1;//不能继续分 else return dfs((n + k) / 2, k)+dfs((n ...

2019-10-15 21:49:32 499

原创 洛谷 P2651 添加括号III

思路:a1肯定是分子,a2肯定是分母,只要确认a1a3a4…/a2是否是整数。只要确认a1a3a4…/a2是否是整数。每次将a2=a2/gcd(a2,ai),i=(1,3,4,5…)即可约分#include<bits/stdc++.h>using namespace std;typedef long long ll;const int MAXSIZE = 10000;i...

2019-10-14 20:57:30 217

原创 洛谷 P2525 Uim的情人节礼物·其之壱

思路:利用STL函数#include<bits/stdc++.h>using namespace std;const int MAXSIZE = 10;int main(){ int n; int a[MAXSIZE]; cin >> n; for (int i = 0; i < n; i++) cin >> a[i]; if (...

2019-10-14 15:25:29 360

原创 洛谷 P4702 取石子

思路:首先明确,只要还有石子,那么一定能取不妨设有两堆石子a1,a2,假设现在还有石子且无法取,那么有a1+a2≥0,a2<a1<0①两不等式矛盾:两个负数相加必定不是非负数②石子数不可能为负数所以只要还有石子,就一定能取。问题就转换为两人轮流从一堆石子取一粒,谁先不能取谁输。#include<bits/stdc++.h>using namespace std...

2019-10-14 15:03:14 391

原创 洛谷 P1590 失踪的7

思路:起初的思路是遍历1到n,判断每个数字是否出现7。后几组数据过大超时。优化思路:把每一位不含7的方案数算出来,因为每一位是相互独立的,所以这些方案数加起来就是答案#include<bits/stdc++.h>using namespace std;typedef long long ll;int main(){ int t; cin >> t; ll ...

2019-10-14 12:09:44 241

原创 洛谷 P1568 赛跑

思路:将输入的speed和time转换为两人每个时刻的位移数组,然后比较两人位移数组大小变换的次数。如果先将输入转换成每时刻速度再转换为位移,会有数据错误。可以直接在输入时就计算两人的位移数组。#include<bits/stdc++.h>using namespace std;typedef long long ll;const int MAXSIZE = 1000100;...

2019-10-14 11:24:26 375

原创 洛谷 P2241 统计方形(数据加强版)

思路:假设n<m,边长为n的正方形个数为:i(n-m+i)*总的正方形数为:sigma [i(n-m+i)] (i=1,2……min{n,m})*矩形个数为:n行有n+1条横边,m列有m+1条竖边,从横边和竖边中各选两条构成矩形,组合数Cn+1,2*Cm+1,2。长方形数=矩形数-正方形数#include<bits/stdc++.h>using namespace ...

2019-10-13 20:14:13 406

原创 洛谷 P2637 第一次,第二次,成交!

思路:要找到转到最多钱最低的单批草料售价先对p从小到大排序。如果有人出价相同,需要特判。**要保证草料够卖。**遍历p,找出赚到最多的钱。#include<bits/stdc++.h>using namespace std;const int MAXNUM = 1000;int main(){ int n, m; cin >> n >> m; ...

2019-10-13 19:27:40 581

原创 洛谷 P2393 yyy loves Maths II

思路:直接进行sum+=data时,浮点数的精度会发生变化。应将其转换为整数后再相加#include<bits/stdc++.h>using namespace std;int main(){ long double a,sum=0; while (cin >> a) sum += a*1000000;//去除小数部分,提高运算精度 cout <...

2019-10-13 18:35:43 180

原创 洛谷 P1149 火柴棒等式

思路:将数字转换为火柴棒个数,两层循环遍历a和b,如果符合func(a)+func(b)+func(a+b)==n则记录一次#include<bits/stdc++.h>using namespace std;const int MAXNUM = 1000;int func(int n) {//将数字转换为火柴棒个数 int x[10] = { 6,2,5,5,4,5,6,...

2019-10-13 16:13:37 145

原创 洛谷 P1847 轰炸II

思路:本题数据过大,不能用二维数组直接模拟。如果用稀疏矩阵,矩阵赋值开销过大。应将第一部分的数据暂时存到数组中,在第二部分遍历判断关键点是否在轰炸区内。#include<bits/stdc++.h>using namespace std;typedef long long ll;const int MAXSIZE = 3000;int main(){ int m, n;...

2019-10-13 15:39:34 315

原创 数据结构 第五章 数组和广义表

#include<bits/stdc++.h>using namespace std;const int MAXSIZE = 2000;typedef long long ll;struct Triple { ll i, j; int e;};struct RLSMatrix { Triple data[MAXSIZE + 1]; ll n, t;};vo...

2019-10-12 16:22:31 359

原创 数据结构 第四章 串

串练习2#include<bits/stdc++.h>using namespace std;int main(){ string s, t;cin >> s;cin >> t; char x; cin >> x; int len_s = s.size(), len_t = t.size(),find = 0; int i; fo...

2019-10-10 10:04:40 162

原创 数据结构 第三章 栈和队列

练习3#include<bits/stdc++.h>using namespace std;stack<double>OPND;//STL数字栈stack<char>OPTR;//符号栈int OPTR_VALUE[1000];void setup() { OPTR_VALUE['#'] = 1; OPTR_VALUE['+'] = 2; O...

2019-10-08 22:15:29 262

空空如也

空空如也

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

TA关注的人

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