这题有点类似LIS,由于颜色最多100种,所以只需建立一个100的数组,按对立面的关系以某种颜色为向上面的最大值就可以了。
 
 #include <iostream>
#include <cstdio>
#include <cstring>
using namespace std; int cube[][];
int max_col[];
int tmp_col[];
struct{
int p;
int wh;
} pre[][]; struct c{
int p;
int wh;
}st_col[],tmp_st[];
int ans,ansc,answ; int main(){
int n; int T=;
while(scanf("%d",&n),n){
for(int i=;i<=;i++)
st_col[i].p=st_col[i].wh=-;
T++;
if(T>) printf("\n");
ans=answ=ansc=-;
memset(max_col,,sizeof(max_col));
for(int i=;i<=n;i++){
for(int j=;j<=;j++)
scanf("%d",&cube[i][j]);
}
for(int i=n;i>=;i--){
for(int j=;j<=;j++){
tmp_col[cube[i][j]]=max_col[cube[i][j]];
tmp_st[cube[i][j]]=st_col[cube[i][j]];
}
for(int k=;k<=;k++){
if(k%){
if(tmp_col[cube[i][k]]+>max_col[cube[i][k+]]){
max_col[cube[i][k+]]=tmp_col[cube[i][k]]+;
if(ans<max_col[cube[i][k+]]){
ans=max_col[cube[i][k+]];
ansc=i;
answ=k+;
}
pre[i][k+].p=tmp_st[cube[i][k]].p;
pre[i][k+].wh=tmp_st[cube[i][k]].wh;
st_col[cube[i][k+]].p=i;
st_col[cube[i][k+]].wh=k+;
}
}
else{
if(tmp_col[cube[i][k]]+>max_col[cube[i][k-]]){
max_col[cube[i][k-]]=tmp_col[cube[i][k]]+;
if(ans<max_col[cube[i][k-]]){
ans=max_col[cube[i][k-]];
ansc=i;
answ=k-;
}
pre[i][k-].p=tmp_st[cube[i][k]].p;
pre[i][k-].wh=tmp_st[cube[i][k]].wh;
st_col[cube[i][k-]].p=i;
st_col[cube[i][k-]].wh=k-;
}
}
}
}
printf("Case #%d\n",T);
printf("%d\n",ans);
int p=ansc,pw=answ;
while(p!=-){
printf("%d ",p);
if(pw==){
printf("front\n");
}
if(pw==) printf("back\n");
if(pw==) printf("left\n");
if(pw==) printf("right\n");
if(pw==) printf("top\n");
if(pw==) printf("bottom\n");
int tp=p,tw=pw;
p=pre[tp][tw].p;
pw=pre[tp][tw].wh;
}
}
return ;
}

UVa Problem 10051的更多相关文章

  1. 【转】UVa Problem 100 The 3n+1 problem (3n+1 问题)——(离线计算)

    // The 3n+1 problem (3n+1 问题) // PC/UVa IDs: 110101/100, Popularity: A, Success rate: low Level: 1 / ...

  2. UVA Problem B: Fire!

    Problem B: Fire! Joe works in a maze. Unfortunately, portions of the maze have caught on fire, and t ...

  3. UVa Problem 10132 File Fragmentation (文件还原) 排列组合+暴力

    题目说每个相同文件(01串)都被撕裂成两部分,要求拼凑成原来的样子,如果有多种可能输出一种. 我标题写着排列组合,其实不是什么高深的数学题,只要把最长的那几个和最短的那几个凑一起,然后去用其他几个验证 ...

  4. UVa Problem 100 The 3n+1 problem (3n+1 问题)

    参考:https://blog.csdn.net/metaphysis/article/details/6431937 #include <iostream> #include <c ...

  5. [题解]UVa 11082 Matrix Decompressing

    开始眨眼一看怎么也不像是网络流的一道题,再怎么看也觉得像是搜索.不过虽然这道题数据范围很小,但也不至于搜索也是可以随随便便就可以过的.(不过这道题应该是special judge,因为一题可以多解而且 ...

  6. [题解]UVa 10891 Game of Sum

    在游戏的任何时刻剩余的都是1 - n中的一个连续子序列.所以可以用dp[i][j]表示在第i个数到第j个数中取数,先手的玩家得到的最大的分值.因为两个人都很聪明,所以等于自己和自己下.基本上每次就都是 ...

  7. [题解]UVa 10635 Prince and Princess

    讲一下题目大意,就是有两个长度为p + 1和q + 1的序列,求它们的LCS. 如果用O(pq)的算法对于这道题来说还是太慢了.所以要另外想一些方法.注意到序列中的所有元素都不相同,所以两个序列中数对 ...

  8. UVa 11019 Matrix Matcher - Hash

    题目传送门 快速的vjudge传送门 快速的UVa传送门 题目大意 给定两个矩阵S和T,问T在S中出现了多少次. 不会AC自动机做法. 考虑一维的字符串Hash怎么做. 对于一个长度为$l$的字符串$ ...

  9. UVa 11997 K Smallest Sums - 优先队列

    题目大意 有k个长度为k的数组,从每个数组中选出1个数,再把这k个数进行求和,问在所有的这些和中,最小的前k个和. 考虑将前i个数组合并,保留前k个和.然后考虑将第(i + 1)个数组和它合并,保留前 ...

随机推荐

  1. E20170829-mk

    Parse   vt. 从语法上描述或分析(词句等); serial    adj. 连续的; 连载的; 顺序排列的; 分期偿付的; MultiThread n. 多线程; 多流; concurren ...

  2. bzoj2822[AHOI2012]树屋阶梯(卡特兰数)

    2822: [AHOI2012]树屋阶梯 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 879  Solved: 513[Submit][Status] ...

  3. A - Beautiful Matrix

    Problem description You've got a 5 × 5 matrix, consisting of 24 zeroes and a single number one. Let' ...

  4. C#之MD5加密

    C#实现MD5加密 方法一 首先,先简单介绍一下MD5 MD5的全称是message-digest algorithm 5(信息-摘要算法,在90年代初由mit laboratory for comp ...

  5. Linux的那点事

    1.重启nginx服务器 注意,修改了nginx配置文件后最好先检查一下修改过的配置文件是否正确,以免重启后Nginx出现错误影响服务器稳定运行. 判断Nginx配置是否正确命令如下: nginx - ...

  6. CSS命名规则和如何命名

    CSS命名规则 头:header 内容:content/containe 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中:l ...

  7. Android MediaRecorder自定义分辨率

    Android MediaRecorder自定义分辨率 工作这么久了,确实积累了不少东西,但都是以文档的形式存在U盘里的,为什么不写博客呢?因为懒啊!!!总感觉博客太难写了(大概是上学时候写作文恐惧症 ...

  8. Mongo连接远程数据库

    mongo IP+Port CrabyterV5 首先这么操作是基于配置了环境变量的,可以参照http://www.cnblogs.com/daiyonghui/p/5209076.html mong ...

  9. servlet_获取初始化参数

    在web.xml的<servlet>标签中增添 <init-param> <param-name>XXX</param-name> <param- ...

  10. java这个404你能解决吗?

    前言 本文首发于公众号[我的小碗汤]本公众号免费提供csdn下载服务,海量IT学习资源,如果你准备入IT坑,励志成为优秀的程序猿,那么这些资源很适合你,包括但不限于java.go.python.spr ...