暑假集训week2
暑假集训-week2图论A - Desert King最优比例生成树+01规划怎么说,,,,,现学的,有点超出能力范围了
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576#include <iostream>#include <algorithm>#include <string.h>#include <math.h>using namespace std;// https://vjudge.net/contest/506494#problem/A// 最优比例生成树+01分数规划+prim算法+实数二分int n;struct node{ double x; double y; double h;} point[10010];double graph[10010][ ...
暑假集训week1
Week1 题解A - Raising Modulo Numbers
快速幂
123456789101112131415161718192021222324252627282930313233343536373839#include <iostream>using namespace std;// https://vjudge.net/contest/505193#problem/A int z;long long fast_power(long long a, long long b, long long c){ long long ans = 1; a %= c; while (b) { if (b % 2) { ans = (ans * a) % c; } b /= 2; a = (a * a) % c; } return ans;}int main(){ ios: ...
洛谷题单-高精度
洛谷题单-高精度加法传送门
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647#include <bits/stdc++.h>using namespace std;// https://www.luogu.com.cn/problem/P1601char n1[10000], n2[10000];int num1[10000], num2[10000];int ans[10000];int main(){ ios::sync_with_stdio(false); cin.tie(0), cout.tie(0); cin >> n1; cin >> n2; int len1 = strlen(n1); int len2 = strlen(n2); memset(num1, 0, sizeof(num1)); memset(num2, 0, sizeof(num2)); ...
洛谷题单-贪心
洛谷题单-贪心牛奶传送门
12345678910111213141516171819202122232425262728293031323334353637383940#include <bits/stdc++.h>using namespace std;// https://www.luogu.com.cn/problem/P1208struct node{ int p; //价格 int t; //拥有的数量} man[100000];bool cmp(node a, node b){ return a.p < b.p;}int main(){ ios::sync_with_stdio(false); int n, m; cin >> n >> m; for (int i = 1; i <= m; i++) { cin >> man[i].p >> man[i].t; } ...
洛谷题单-分治
洛谷分治题单归并排序or逆序对传送门
1234567891011121314151617181920212223242526272829303132333435363738394041#include <iostream>using namespace std;long long ans = 0;int a[10000000], c[10000000];void mergesort(int a[], int left, int right){ if (left >= right) return; int mid = (right + left) / 2; mergesort(a, left, mid); mergesort(a, mid + 1, right); int k = 0; int i = left, j = mid + 1; while (i <= mid && j <= right) { if (a[i] <= a[j]) c[k++] = a[i++]; else { an ...
洛谷题单-二分
二分专题先贴一个二分的板子传送门
12345678910111213141516int erfen(){ int l = 1, r = n, ans; while (l <= r) { int mid = (l + r) >> 1; if (check(mid)) { ans = mid; l = mid + 1; } else r = mid - 1; } return ans;}
一元三次方程oj
[NOIP2001 提高组] 一元三次方程求解题目描述有形如:$a x^3 + b x^2 + c x + d = 0$ 这样的一个一元三次方程。给出该方程中各项的系数($a,b,c,d$ 均为实数),并约定该方程存在三个不同实根(根的范围在 $-100$ 至 $100$ 之间),且根与根之差的绝对值 $\ge 1$。要求由小到大依次在同一行输出这三个实根(根与根之间留有空格),并精确到小数点后 $2$ 位。
提示:记方程 $f(x) = 0$,若存在 $2$ 个数 $x_1$ 和 $x ...
关于memset赋值的探讨
memset赋值尽量用0x3f3f3f3f赋值,这样memset赋值结果和“=”赋值号效果相同,不会出现数字对不上。0x7fffffff同理(7个f)
这是运行代码可以看到对于memset,这四种方法是等效的。
1234567891011121314151617181920#include <bits/stdc++.h>using namespace std;int a[100];int main(){ memset(a, 0x3f, sizeof(a)); cout << a[0] << endl; memset(a, 0x3f3f, sizeof(a)); cout << a[0] << endl; memset(a, 0x3f3f3f, sizeof(a)); cout << a[0] << endl; memset(a, 0x3f3f3f3f, sizeof(a)); cout << a[0] << endl; ...
朝花夕拾(二)————大一下蹲家学习生活回顾
序先挖一个坟,以纪念逝去的青春
12月30号,ACM寒假培训的最后一天,整个宿舍已经只剩下我一个了,原本有两个山东室友和自己并肩作战,结果却先润了,走前的前一天,爸妈让我把桌上的东西全部放入箱子,所有的衣服都寄回家,当初还不太理解,现在看真是明智之举、、、、、、走的前一天晚上,我到5157去串门,住在那里的是dxy大佬,七天培训经常找他debug,慢慢变熟了我的是31号一早的火车,他走得比我迟,我去和他道别,寒暄之余,我清晰地记得我说了一句:“三个月后再见!”
蹲家生活我原本以为20年疫情的寒假,是我人生最长的假期现在看来,是我太年轻了。
从12月31号离开学校,到7月3号的今天课设刚刚写完,已经整整过去半年的时间。不知不觉一个学期竟然在家中度过。
有些事想想真的很恍惚,即使在过去的12年学习生活中,虽然也是在家上学读书,但是大部分的时间其实都在学校,宅在家里的时间其实并不多,在这个半年里,在家几乎宅了半年。学习,生活全在家中解决,无论是以往的小学中学生活,还是以后步入社会的工作生活。呆在家里时间这么长的经历应该是绝无仅有的。我忍不住想,这样宝贵的人生阅历,到底是赢还是输呢?
文化课学 ...
朝花夕拾-GPLT赛后遐想
朝花夕拾-GPLT赛后遐想2022年的GPLT圆满结束,在前有蓝桥杯结束不到半个月,后有一星期即将大学物理考试的情况下,说实话这个天梯赛时间上真的有点尴尬。
gplt(团体程序设计天梯赛),规则就是每个学校拉若干的队伍,每个队伍十个人,队伍排名按照是个人做出来题目得分的总和进行排名,每个学校获奖队伍只能有三个(想获奖还必须挤入学校队伍前三)。
三月下旬的时候,学校的竞赛队实行包分配制度,前三个队伍是拿奖队,汇聚了各路卷王和大二学长,成员大多是俱乐部名声在外的大佬。后面三队是大一同学(我在第五组)组成的队伍,定位其实是重在参与,为明年积累经验。
所以当时看到分队表,表中的队伍实力是从一到六逐级递减的,看到自己没能进入前三队,说实话,挺难受的说。
学校的这样的决策肯定是正确的,想让奖项最大化,优先让实力强劲的同学去组建前三队,这个策略很合理(换做我我也会这样去组织),让大一先积累经验,大二再战。虽然知道如此,那几天心情都不太好,总觉得自己获奖无望了。之前寒假专门报了洛谷算法班,蓝桥杯从第六届做到了第十三届,gplt的往年真题在分队结果没出之前就一直在刷,当你紧锣密鼓严阵以待,最终结果大概率 ...
scanf和printf读入输出字符串的探讨
scanf和printf读入输出字符串的探讨1. scanf读入char字符数组(char字符串)1234567891011121314#include <bits/stdc++.h>using namespace std;int main(){ int len; char str[10000]; scanf("%d",&len); for(int i=1;i<=len;i++) { scanf("%s",str); printf("%s\n",str); } return 0;}
2. cin.getline()整行读入char字符数组(char字符串)1234567891011121314151617#include <bits/stdc++.h>using namespace std;int main(){ int n; scanf("%d",&n); getchar(); for(int i=1;i& ...