WHU 1552 Seats 枚举】的更多相关文章

题意: 有一个年级中7个班的n个学生. 一天,他们毫无顺序的站成一排.请计算最小的交换次数,使得 相同班的同学都站在一起. (只有站在一起的人才能交换) 思路: 如果知道班级的最终排列就能在很短的时间里,计算出所需的交换次数.那么,我们只需要枚举排列即可. 如果,a班的一个人要走到前面,那么,他必须和他前面所有其他班的人交换. 所以,先预处理出一个数组 f[i][j] 表示 每个 i 班的前面的 j 班同学的总和.然后就可以在m(班级数) * m 的时间里求出排列需要交换的次数. 代码: #in…
F - Finding Seats Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status Practice HDU 1937 Description A group of K friends is going to see a movie. However, they are too late to get good tickets, so they are looki…
题目链接:http://acm.whu.edu.cn/land/problem/detail?problem_id=1552 解题报告:题目意思应该很清楚,就是有n个人,分别属于7个班级,然后他们坐成一排,现在要通过相邻的两个人做交换,使得所有同一个班的人都坐到一起,问这个交换的次数最少是多少? 比赛的时候第一个就是看这题,因为题意简单,但是看完了一点想法都没有,所以果断换了一题,看了题解才知道怎么做. 首先如果我们知道最后的排列是怎么样的,那么求一共要交换多少次就只要求初始状态跟最后的排列的逆…
hdu1937 Finding Seats 题意是 求最小的矩形覆盖面积内包含 k 个 空位置 枚举上下边界然后 双端队列 求 最小面积 #include <iostream> #include <cstring> #include <cstdio> #include <cmath> #include <algorithm> #include <vector> #include <map> #include <que…
Problem UVA11846-Finding Seats Again Accept: 69    Submit: 433Time Limit: 10000 mSec Problem Description A set of n2 computer scientists went to the movies. Fortunately, the theater they chose has a square layout: n rows, each one with n seats. Howev…
Splay大法是坠吼滴! 1552: [Cerc2007]robotic sort Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 436  Solved: 186[Submit][Status][Discuss] Description Input 输入共两行,第一行为一个整数N,N表示物品的个数,1<=N<=100000.第二行为N个用空格隔开的正整数,表示N个物品最初排列的编号. Output 输出共一行,N个用空格隔开的正整数P1,P2,P3…
题目链接: http://acm.whu.edu.cn/land/problem/detail?problem_id=1537 Stones I Time Limit: 1000MSMemory Limit: 65536KB 问题描述 Xiaoming took the flight MH370 on March 8, 2014 to China to take the ACM contest in WHU. Unfortunately, when the airplane crossing t…
E. Lost in WHU 比赛的时候一直不知道样例怎么来的,然后和队友推了一下,然后还是没什么思路,样例手推很困难,然后我随口枚举了几个算法dp.广搜.快速幂.比赛结束问了谷队长结果真的是用快速幂写. 题意:n个点,m条边,每一步可以从一个点走到与其相连的点上,求如果最多可以走T步,1到n有多少种走法. 思路:裸的矩阵快速幂,初始矩阵在输入的时候连的双向边,表示可走,但要注意从n出发的话只有单向边,题目说明走到n号节点就不能走出去了.n到n也要连一条边.然后求这个矩阵的T次方,结果就是第一行…
题目见: http://acm.whu.edu.cn/land/problem/detail?problem_id=1537 这个题相当无语,学长给的解法是:枚举取的个数k,然后对每个k贪心,取其中的最大值. 我想思路应该是这样:结果与选取的顺序无关,只和最终选取的数量有关. 所以,就枚举最终选取的数量k,在这种情况下,每个物品的价值就是固定的. 所以,在这种情况下,最优策略就一定是选取价值最大的前k个. 代码: #include <cstdio> #include <cstring&g…
题目链接: http://acm.whu.edu.cn/land/problem/detail?problem_id=1581 --------------------------------------------------------------------------------------- 观察到第一维最大只有$10$ 于是第一维可以直接枚举 $($把长方体切成矩形$)$ 观察到第二维最大只有$100$ 于是第二维也可以继续枚举 $($把矩形切成线段$)$ 如果最后一维用线段树实现区…