摘要:
题意 要求构造一个字符方阵。给定n对字符,每对字符表示这两个字符不能出现在方阵中,输出方案 思路 很容易想到两个字符间连一条有向边,构成一张有向图,遍历它的补图,若该补图有环,则输出这个环,注意环的长度若大于20要截取;若无环,则输出最长链。 问题转化为给定一张有向图,找环,若无环,找最长链。做法是 阅读全文
摘要:
链接:https://nanti.jisuanke.com/t/A1594 思路:Floyd求最短路模板题,最后把两串对应字符间最短路相加即可,注意输入时两个相同字符不需要考虑,inf设为0x7ffffff防止爆int 代码: 1 #include<bits/stdc++.h> 2 #define 阅读全文
摘要:
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1599 思路:floyd求最小环模板,不知道为什么用dijkstra超时了,inf设为0x7ffffff防止爆int 代码: 1 #include<bits/stdc++.h> 2 #define inf 0 阅读全文
摘要:
链接:http://poj.org/problem?id=2240 题意:给n个货币,给定m对货币间的汇率,问是否存在一种货币,通过不停的兑换,最后使得自己的钱变多 思路:边权为汇率的有向图,在图中找到一个环,满足边权累乘大于1,floyd算法 代码: 1 #include<iostream> 2 阅读全文
摘要:
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1874 思路:Dijkstra模板题 代码: 1 #include<bits/stdc++.h> 2 3 #define inf 0x3f3f3f3f 4 using namespace std; 5 6 t 阅读全文
摘要:
链接:https://codeforces.com/problemset/problem/1245/D 题意:n个城市,选择一些城市建造电厂,选择一些城市和电厂城市连接或通过连接其他城市间接和电厂城市连接,建造电厂的花费为c,连接两城市的花费为两城市的k值和乘上曼哈顿距离,问最小花费及哪些城市建造电 阅读全文
摘要:
链接:https://nanti.jisuanke.com/t/43384 题意:规定一种字符串替换模式,问给定字符串是否符合该模式 思路:一开始是想着用递归去判断串是否合法,但是不停WA,查了半天不知道哪有问题,猜测是判断T串的问题 1 #include<bits/stdc++.h> 2 #def 阅读全文
摘要:
链接: https://ac.nowcoder.com/acm/contest/3003/H 思路: 先排序,再dp,dp[i]表示用掉前i个元素的最小值,转移方程 dp[i] = min{dp[j]+a[i]-a[j]},j∈[i,j-k+1], 维护dp[j]-a[j]的前缀最小值即可 代码: 阅读全文