Acwing
wsfhdhjs
这个作者很懒,什么都没留下…
展开
-
第2章 高精度
A1002#include<iostream>using namespace std;const int maxn=1010;double a[maxn],b[maxn],c[maxn];int main(){ int k; cin >> k; while(k--) { int n; double v; cin >> n >> v; a[n]=v原创 2021-03-13 11:21:52 · 46 阅读 · 0 评论 -
第3章 进位制
A1010#include <iostream>#include <algorithm>using namespace std;typedef long long LL; //这里就得设置成 long longint get(char c){ if (c <= '9') return c - '0'; return c - 'a' + 10;}LL calc(string n, LL r) //计算给出原创 2021-03-13 10:39:17 · 103 阅读 · 0 评论 -
第5章 进位制
A1010原创 2021-03-09 22:18:38 · 51 阅读 · 0 评论 -
第4章 排序
A1012#include <iostream>#include <algorithm>#include <unordered_map>#include <vector>#include <cmath>using namespace std;unordered_map<string, vector<int>> grades;vector<int> q[4]; // A: q[0], C: q原创 2021-03-05 19:43:46 · 54 阅读 · 0 评论 -
第5章 树
A1004#include <cstring>#include <iostream>#include <algorithm>using namespace std;const int N = 110;int n, m;int h[N], e[N], ne[N], idx;int cnt[N], max_depth;void add(int a, int b){ e[idx] = b, ne[idx] = h[a], h[a] = id原创 2021-02-21 20:58:17 · 72 阅读 · 0 评论 -
第6章图论
A1003#include<iostream>#include<cstring>using namespace std;const int maxn=510;int d[maxn][maxn],w[maxn];int dist[maxn],cnt[maxn],sum[maxn];int n,m,S,T;bool st[maxn]={false};void dijkstra(){ memset(dist, 0x3f, sizeof dist);原创 2021-02-07 17:23:55 · 100 阅读 · 0 评论 -
第7章 数学
A1049#include<iostream>#include<vector>using namespace std;int n;int cacl(int n){ vector<int> a; while(n) { a.push_back(n%10); n/=10; } int res=0; for(int i=a.size()-1; i>=0; i--) {原创 2021-02-02 20:36:05 · 57 阅读 · 0 评论 -
第8章 动态规划
A1007//需要注意的是,如果结果为负数,将值改为0 后面输出的是 这一段最大值中的第1个值和最后一个值,不是下标#include<iostream>using namespace std;const int maxn=10010;int n;int w[maxn];int main(){ cin >> n; for(int i=1; i<=n; i++) cin >> w[i]; int原创 2021-01-31 20:06:49 · 59 阅读 · 0 评论 -
第9章 哈希表
A1048#include<iostream>#include<unordered_set>using namespace std;int main(){ int n,m; unordered_set<int> pp; cin >> n >> m; int v1=1e9,v2; for(int i=0; i<n; i++) { int temp;原创 2021-01-27 20:34:42 · 79 阅读 · 0 评论 -
第10章 并查集
A1013#include<iostream>using namespace std;/*2≤N≤1000, N表示节点个数1≤M≤N(N−1)2, M表示最大边数,每个点除自身外,可以和剩下的n-1个点,相连,所以是n*n(n-1) 注意这样所有的边倍计算了两次,所以最后是n*(n-1)/2*/const int maxn=500010;int n,m,k;struct node //边的 结构,一条边上的 两个原创 2021-01-26 20:35:49 · 56 阅读 · 0 评论 -
第 11 章 模拟
A1008#include<iostream>using namespace std;const int maxn=111;int a[maxn],n;int main(){ cin >> n; int next,qian=0; int time=0; for(int i=0; i<n; i++) { cin >> next; if(next>qian)原创 2021-01-17 22:21:33 · 105 阅读 · 0 评论 -
第12章 贪心
A1037#include<iostream>#include<vector>#include<algorithm>using namespace std;/* 总的思路:将两个数组先按照降序排列,分别 按照 整数 和 负数 分开到 a1,b1,a2,b2 然后再 用 双指针 对应 相乘,其中 正数部分从 数组头开始,而负数 部分 从 数组 尾 开始*/vector<int> a,b,a1,b1,a2,b2;int n,m;原创 2021-01-13 22:41:32 · 112 阅读 · 0 评论