UVA 10334 Ray Through Glasses】的更多相关文章

自己手动画了第三项发现f[3]=5;就猜斐波那契了.实际上光线分为两种距离外界有2面玻璃,1面玻璃 其分别时n-1次反射,n-2次反射形成的 故推出斐波那契. 手动一些f1,f2,f3就OK #include <map> #include <set> #include <list> #include <cmath> #include <ctime> #include <deque> #include <stack> #in…
UVa 10334 这道题几乎和UVa 495是一样的. #include<iostream> #include<cstdio> #define mod 1000000 using namespace std; ; ; int f[maxn][maxn]; int main() { f[][] = , f[][] = ; ; i <= ; i++) { ; ; j <= len; j++) { ][j] + f[i - ][j]+c; f[i][j] = t%mod;…
"Ray, Pass me the dishes!" UVA - 1400 题意就是线段树区间子段最大和,线段树区间合并,但是这道题还要求输出最大和的子段的左右端点.要求字典序最小,要求左右端点尽量靠左. 比如: 3 3 3 -9 3 3 3 输出的是1 3,而不是1 7 3 3 3 -9 3 3 4 输出的是1 7,而不是5 7 大体意思就是这样. 有一个坑,我没读好题,输出Case是每一组样例输出一个,而不是每查询一次就输出一次Case... 其他没什么了.具体代码写了注释. 代码…
又是一道线段树区间更新的题: #include<cstdio> #include<algorithm> #include<cstring> #define ll long long #define maxn 500005 using namespace std; ll sum[maxn]; struct tree { int l,r; int ml,mr; int pre,suf; tree *left,*right; } tr[maxn*]; int trcount;…
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=30506#problem/T 题意:给你一束光,问你在一个三层的平面类传递n次的种数: 仔细想下,就是一个fibonacci数列: #include<map> #include<set> #include<list> #include<cmath> #include<ctime> #include<deque> #includ…
题目链接:https://vjudge.net/problem/UVA-1400 题意:给一串序列,求最大子段,如果有多个,输出字典序最小的那个的左右端点 思路: 之前写过类似的,这个麻烦点需要输出左右端点,我们直接再开几个数组维护左右边界就好了,因为pushup和查询都需要合并操作,我们可以改下pushup传的参数,让查询的时候也可以用pushup合并区间信息. 字典序最小的只要合并和查询的时候都优先向左就好了. 实现代码; #include<bits/stdc++.h> using nam…
题目 Volume 0. Getting Started 开始10055 - Hashmat the Brave Warrior 10071 - Back to High School Physics 10300 - Ecological Premium 458 - The Decoder 494 - Kindergarten Counting Game 414 - Machined Surfaces 490 - Rotating Sentences 445 - Marvelous Mazes…
UVA 1400 - "Ray, Pass me the dishes!" option=com_onlinejudge&Itemid=8&page=show_problem&category=501&problem=4146&mosmsg=Submission+received+with+ID+13958986" target="_blank" style="">题目链接 题意:给定一个序…
求一个区间的最大连续子序列,基本想法就是分治,这段子序列可能在区间的左半边,也可能在区间的右半边,也有可能是横跨区间中点,这样就是左子区间的最大后缀加上右子区间的最大前缀之和. 线段树维护三个信息:区间最大前缀.最大后缀.最大连续子区间的下标. 最大前缀可以通过递推来求:要么是左子区间的最大前缀和.要么是左子区间的和 加上 右子区间的最大前缀和 最大后缀和的递推类似. 递推之前要预处理整个序列的前缀和. #include <cstdio> #include <cstring> #i…
                        "Ray, Pass me the dishes!" Time Limit: 3000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu [Submit]   [Go Back]   [Status] Description   After doing Ray a great favor to collect sticks for Ray, Poor Neal bec…