摘要:
简单的动态规划题,不过题目意思很蛋疼;刚刚开始认为是最长上升子序列,错的一塌糊涂;后来看了斌牛的题解才知道是最长公共子序列;题解:当a[i]==b[j],d(i,j)=(i-1,j-1)+1;else d(i,j)=max(d(i,j-1),d(i-1,j));代码: 1 #include 2 #define maxn 25 3 #include 4 #include 5 using namespace std; 6 int a[maxn],b[maxn],f[maxn][maxn]; 7 int main() 8 { 9 int n,x;10 scanf("%d",&am 阅读全文
摘要:
DescriptionCX老湿经常被人黑,被黑得多了,自己也就麻木了。于是经常听到有人黑他,他都会深情地说一句:禽兽啊!一天CX老湿突发奇想,给大家出了一个难题,并且声称谁能够准确地回答出问题才能继续黑他,否则他就要反击了。这个难题就是:给出两个数p和q,接下来q个询问,每个询问给出两个数A和B,请分别求出:一、有多少个有序数对(x,y)满足1 2 #define maxn 10000001 3 #define ll long long 4 using namespace std; 5 int a,b,cnt[maxn]; 6 ll getans(int l,int r) 7 { 8 ... 阅读全文
摘要:
Description 殷犇有很多队员。他们都认为自己是最强的,于是,一场比赛开始了~ 于是安叔主办了一场比赛,比赛有n个题目,每个题目都有一个价值Pi和相对能力消耗Wi,但是有些题目因为太坑不能同时做出来,并且坑题具有传递性。(a和b一起做会坑、b和c会坑则a和c也会坑) ACM队员们想知道,于是他们想知道在能力范围内,它们最多可以作出多少价值的题目。 聪明的你,告诉我,能帮帮他们吗?Input 第1行两个整数,n,Wmax,k(0 2 #include 3 #include 4 #define maxn 1005 5 using namespace std; 6 7 int f[max.. 阅读全文
摘要:
Description CX是要赶去上课,为了不迟到必须要以最短的路径到达教室,同时CX希望经过的路上能看到的学妹越多越好。现在把地图抽象成一个无向图,CX从1点出发,教室在N号点,告诉每个点上学妹的数量,每条边的长度。请你求出CX以最短路径赶到教室最多能看到多少学妹。Input 多组输入数据(最多20组),输入到文件结束。 每组数据第一行两个正整数N,M其中N代表点的个数(2 2 #include 3 #include 4 #define maxn 1005 5 #define inf 10000000 6 using namespace std; 7 8 int xuemei[maxn]. 阅读全文