![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法入门紫
凡本专栏发布的代码均在Virtual Judge上测试并AC
进击的程序
Talk is cheap. Show the code!
展开
-
紫书 抄书 UVa714
二分法确定最小的最大和minS。之后根据minS分割序列。separator[i]表示该位置上是否有" /"。为使S(1)尽量小,则S(2)尽量大;为使S(2)尽量小,则S(3)尽量da……以此类推,只需使得S(k),S(k-1),…尽量大。#include<cmath>#include<cstdlib>#include<cstring>#include<cassert>#include<cstdio>#include<iost.原创 2021-04-23 17:32:32 · 165 阅读 · 2 评论 -
紫书 10-20-30 UVa246
模拟题,使用了list。注意:开始将摆放出7个牌堆也应计算在cnt内。#include<cmath>#include<cstdlib>#include<cstring>#include<cassert>#include<cstdio>#include<iostream>#include<string>#include<numeric>#include<algorithm>#in.原创 2021-04-18 20:50:48 · 132 阅读 · 1 评论 -
紫书 纸牌游戏 UVa127
思路:本题主要考察数据结构和stl的使用。牌堆用stack存储,再用list把stack链接起来。由于要求一张牌移动后应当查看该涨牌是否可以继续移动,故使迭代器指向其移动后的位置,以便判断其是否可以继续移动。输出:本题应当注意pile输出的单复数。#include<cmath>#include<cstdlib>#include<cstring>#include<cassert>#include<cstdio>#include<.原创 2021-04-15 00:20:12 · 224 阅读 · 0 评论 -
算法竞赛格式错误常见
1.多输出最后空行输出格式应为:1/n2/n3/n表示空行2.多输出最后空格输出格式应为0 1 1 1 0 0 0 0 0 01 6 2 2 1 1 1 1 1 1注:每行最后一个数后面不应输出空格如果写成for (int count : digit){ cout << count << ' ';}cout << endl;则会presentation error应改为for (int i = 0; i < 10; +原创 2021-04-12 18:49:28 · 198 阅读 · 0 评论 -
紫书 宝箱 UVa12325
#include<iostream>#include<string>#include<cassert>#include<numeric>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>.原创 2021-04-12 16:03:49 · 75 阅读 · 0 评论 -
紫书颜色的长度UVa1625
为了明晰起见,声明了c[i][j]数组以存储还有多少个“不完全”的颜色(即已经开始但未终止)。d[i][j]则为颜色长度总和。状态转移方程为d[i][j]=min{d[i-1]d[j]+c[i-1]c[j],d[i][j-1]+c[i][j-1]}。结果为d[n][m]参考自刘汝佳老师代码:#include<iostream>#include<string>#include<cassert>#include<numeric>#include<.原创 2021-04-10 12:20:21 · 88 阅读 · 0 评论 -
紫书划分成回文串UVa11584
d[i]为字符0~i划分成的最小回文串个数,状态转移方程d[i]=min{d[j]+1|s[j+1~i]是回文串}。运用了对函数调用结果进行缓存的优化技术。将算过的字符串s[i~j]是否为回文串结果存放在p数组中,vis数组则表示是否访问过该字符串。如果访问过,则返回p中对应结果。参考刘汝佳老师代码:#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const .原创 2021-04-10 10:14:30 · 72 阅读 · 0 评论 -
紫书 照明系统设计 UVa11400
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<sstream>.原创 2021-04-08 12:28:30 · 76 阅读 · 0 评论 -
紫书劲歌金曲 UVa12563
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<sstream>.原创 2021-04-07 09:43:06 · 96 阅读 · 2 评论 -
紫书 UVa116
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<sstream>.原创 2021-04-05 21:58:43 · 86 阅读 · 0 评论 -
紫书 旅行 UVa1347
来自刘汝佳老师代码:#include<cstdio>#include<cmath>#include<algorithm>using namespace std;const int maxn = 50 + 5;double x[maxn], y[maxn], dist[maxn][maxn], d[maxn][maxn];int main() { int n; while(scanf("%d", &n) == 1) { for(i.原创 2021-04-05 21:27:28 · 71 阅读 · 0 评论 -
紫书 巴比伦塔UVa437
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<sstream>.原创 2021-04-05 17:32:09 · 88 阅读 · 0 评论 -
紫书 城市里的间谍 UVa1025
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<sstream>.原创 2021-04-05 16:05:49 · 74 阅读 · 0 评论 -
紫书 防线 UVa1471
以下参考自刘汝佳老师代码,使用了stl中的set,set集合不会插入的重复元素#include<cstdio>#include<set>#include<cassert>using namespace std;const int maxn = 200000 + 5;int n, a[maxn], f[maxn], g[maxn];struct Candidate { int a, g; Candidate(int a, int g):a(a),.原创 2021-04-05 10:56:14 · 1167 阅读 · 4 评论 -
紫书 唯一的雪花 UVa11572
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<sstream>.原创 2021-04-05 00:43:10 · 96 阅读 · 0 评论 -
紫书 Gergovia的酒交易 UVa 11054
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<sstream>.原创 2021-04-04 11:26:44 · 91 阅读 · 0 评论 -
紫书 传说中的车UVa11134
有多种解,输出一种即可。以下来自刘汝佳老师代码。#include<cstdio>#include<cstring>#include <algorithm>using namespace std;// solve 1-D problem: find c so that a[i] <= c[i] <= b[i] (0 <= i < n)bool solve(int *a, int *b, int *c, int n) { fill(.原创 2021-04-04 11:14:48 · 86 阅读 · 0 评论 -
紫书 和为0的4个值 UVa 1152
注意此题最好选择unorded_map存放a+b的所有和,如果改成map极其容易超时。#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>.原创 2021-04-04 00:59:44 · 66 阅读 · 0 评论 -
紫书 联合国大楼UVa1605
```#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<sstream&..原创 2021-04-04 00:23:18 · 80 阅读 · 0 评论 -
紫书 煎饼UVa120
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<sstream>.原创 2021-04-03 23:29:52 · 62 阅读 · 0 评论 -
紫书 编辑书稿 UVa11212
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<queue>#i.原创 2021-03-29 14:52:59 · 83 阅读 · 2 评论 -
紫书 万圣节后的早晨 UVa1601
参考了刘汝佳老师的代码,但没有对空格编号。优点是写代码和调试时更为直观,但需要开较大的vis数组。#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vecto.原创 2021-03-28 09:10:12 · 108 阅读 · 0 评论 -
紫书UVa10603
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>#include<queue>us.原创 2021-03-26 16:53:54 · 75 阅读 · 0 评论 -
紫书素数环UVa524
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>using namespace std;boo.原创 2021-03-24 20:16:23 · 89 阅读 · 0 评论 -
紫书UVa10976
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>using namespace std;in.原创 2021-03-24 19:37:31 · 55 阅读 · 2 评论 -
紫书UVa725
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector>#include<set>using namespace std;in.原创 2021-03-24 19:22:01 · 53 阅读 · 0 评论 -
紫书UVa12118
欧拉道路存在的条件:1、最多只能有两个度数为奇数的结点 2、图是连通的注意特殊判断E=0情况#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<cstdlib>#include<cstring>#include<vector&.原创 2021-03-22 16:13:05 · 84 阅读 · 0 评论 -
紫书UVa806
以下用invstr存储5进制的字符串,image二维数组存储图像。solvemap和fillmap分别处理两种不同的情况。注意输出格式:样例之间有空行,但最后不能有空行;每两个数字之间有空格,但最后不能有空格,并且每打印12个数字则应换行。#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cm.原创 2021-03-22 09:36:52 · 99 阅读 · 0 评论 -
紫书UVa804
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>#include<vector>using namespace std;map<int, int>tokens;struct Transition{ map<int, int>outp.原创 2021-03-21 16:09:05 · 105 阅读 · 0 评论 -
紫书UVa12166
#include<iostream>#include<string>#include<cassert>#include<algorithm>#include<map>#include<cmath>using namespace std;const int MAXN = 24;typedef long long LL;int main(){ //freopen("input.txt", "r", stdin);.原创 2021-03-21 11:44:14 · 61 阅读 · 1 评论 -
紫书UVa1600
#include<iostream>#include<string>#include<queue>#include<cstring>using namespace std;struct point{ int x; int y; point(const int x=-1,const int y=-1):x(x),y(y){} };struct status{ point pos; int turbo; status(const .原创 2021-03-21 11:42:54 · 63 阅读 · 0 评论 -
紫书UVa439
#include<iostream>#include<string>#include<queue>#include<cstring>using namespace std;struct point{ int x; int y; point(const int x=-1,const int y=-1):x(x),y(y){} };point operator+(const point& A,const point&B).原创 2021-03-20 20:07:00 · 99 阅读 · 0 评论 -
紫书6-3,UVa536
#include<iostream>#include<string>using namespace std;string pre, in;struct node{ char c; node* leftchild; node* rightchild;};node* build(int preL, int preR, int inL, int inR){ if (preR == preL) return NULL; int idx = inL; whi.原创 2021-03-19 17:59:57 · 67 阅读 · 0 评论 -
紫书6-2,UVa712
#include<iostream>#include<string>using namespace std;const int maxn = (1 << 8) + 10;int n, order[maxn];string value;char solve(){ string tmp; cin >> tmp; int cnt = 0; for (int i = n; i >= 1; --i) { if (tmp[order[.原创 2021-03-19 17:26:03 · 52 阅读 · 0 评论 -
紫书UVa673
此处用栈模拟关于getline的用法请参考C输入输出总结#include<cmath>#include<algorithm>#include<cstring>#include<string>#include<iostream>#include<stack>using namespace std;bool parse_string(stack<char>& st, char c){ if (c.原创 2021-03-15 15:59:20 · 57 阅读 · 0 评论 -
紫书5-16UVa212
构造事件队列,依次处理即可。注意:如果两人同时做完手术,则手术室序号小的人优先进入恢复室#include<bits/stdc++.h>using namespace std;struct Event{ int time,id,type; Event(int t,int id,int type):time(t),id(id),type(type){} bool operator<(const Event&e)const {return time>原创 2021-03-12 13:24:49 · 130 阅读 · 0 评论 -
紫书Revenge of Fibonacci,UVa12333
`#include <bits/stdc++.h>using namespace std;const int BASE=10000;template<int MaxNode,int Sigma_Size>struct Trie{int ch[MaxNode][Sigma_Size],sz,val[MaxNode];Trie(){sz=1;memset(ch[0],0,sizeof(ch[0]));memset(val,0,sizeof(val));}int原创 2021-03-10 09:47:27 · 92 阅读 · 0 评论 -
紫书UVa1598
#include <vector>#include <map>#include<algorithm>#include<cmath>#include<vector>#include<cstdio>#include <sstream>#include<iostream>#include<iomanip>#include<stack>#include<set>.原创 2021-03-09 22:41:07 · 123 阅读 · 0 评论 -
紫书UVa822
此题巨坑,慎入。本人按紫书上所给思路实现,由于时间限制在一天内,分钟数小于1440,故每次分钟数増一也可保证算法所用时间不超时。此种方法无需优先队列。1.已到达的请求移出topics,存储在waitingrequests当中。2.对于每个客服,按序遍历其熟悉的工作,如果遇到其熟悉的工作在waitingrequests当中,则停止遍历,并将其放入chosen中,每个客服只选了一个请求。3.若chosen.size()>0,置change=1。对于chosen中的每个工作,其可能对应有多个客服的.原创 2021-03-08 14:21:47 · 90 阅读 · 0 评论 -
紫书UVa511
#include <vector>#include <map>#include<algorithm>#include<cmath>#include<set>#include<cstdio>#include <sstream>#include <string>#include<iostream>#include<iomanip>#include<stack>.原创 2021-03-06 12:28:45 · 57 阅读 · 0 评论