uva 1631——Locker
题意:有一个n位的密码锁,每位都是0——9可以循环旋转,每次可以往上或者往下旋转一下,然后给定初始状态和末状态求最小旋转步数。
思路:递推,dp(i,x,y)表示翻到i位第i+1位为x,第i+2位为y的最小步数,枚举上翻状态,找到正翻和倒翻的最小值。
code:
#include <bits/stdc++.h>
using namespace std;#define cls(a,c) memset(a,c,sizeof (a))
#define ft(i,s,t) for (int i=s;i<=t;i++)
const int N=12,M=1005;char s[M],t[M];
int a[M],b[M];
int dp[M][N][N];int main()
{while (~scanf("%s %s",s,t)){int n=strlen(s);ft(i,1,n) a[i]=s[i-1]-'0',b[i]=t[i-1]-'0';a[n+1]=b[n+1]=a[n+2]=b[n+2]=0;cls(dp,63);//ft(i,1,n) printf("%d",b[i]);dp[0][a[1]][a[2]]=0;ft(i,1,n) ft(x,0,9) ft(y,0,9){int d=(b[i]-x+10)%10;ft(j,0,d) ft(k,0,j)dp[i][(y+j)%10][(a[i+2]+k)%10]=min(dp[i][(y+j)%10][(a[i+2]+k)%10],dp[i-1][x][y]+d);int p=10-d;ft(j,0,p) ft(k,0,j)dp[i][(y-j+10)%10][(a[i+2]-k+10)%10]=min(dp[i][(y-j+10)%10][(a[i+2]-k+10)%10],dp[i-1][x][y]+p);}printf("%d\n",dp[n][0][0]);}
}
uva 1631——Locker相关推荐
- UVA 1631 Locker(HDU 4433)(DP)
A password locker with N digits, each digit can be rotated to 0-9 circularly. You can rotate 1-3 con ...
- 紫书《算法竞赛入门经典》
紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...
- [搜索]UVa 129 困难的串
题意:将一个包含两个相邻的重复子串的子串,称为"容易的串",其他为"困难的串". 输入正整数n和l,输出由前l个字符组成的,字典序第n小的困难的串. 输入样例: ...
- uva 401.Palindromes
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...
- Uva 3767 Dynamic len(set(a[L:R])) 树套树
Dynamic len(set(a[L:R])) Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 https://uva.onlinejudge.org/in ...
- UVA 11752 超级幂
UVA 11752 超级幂 Z - The Super Powers Time Limit:1000MS Memory Limit:0KB 64bit IO Format:%lld & ...
- UVa 11174 - Stand in a Line
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...
- UVa 10112 - Myacm Triangles
UVa第一卷最后一题. 求内部不含点并且面积最大的三角形. 暴力. 代码如下: 1 #include<iostream> 2 #include<cstdio> 3 #inclu ...
- UVa 10180 - Rope Crisis in Ropeland!
题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=41&pa ...
最新文章
- 气计算,人工智能高度发达的未来世界
- JQuery:JQuery捕获HTML
- GOOGLE域名存在漏洞,可以用来建立钓鱼站点(目前已临时被封闭)
- Git 安装及常用操作配置
- Java - Get a list of all Classes loaded in the JVM[转]
- python if else break_Python的for和break循环结构中使用else语句的技巧
- 30万手表推荐_一年收入20万—30万的小生意,市场上有哪些呢?推荐几个供参考...
- 严格对角占优矩阵特征值_二次型和特征值
- 无可奈何花落去,数据丢失时时来;何当共谈完整性,却话巴山夜雨时----详解SQL Server 数据库库完整性检查和置疑修复
- 电商场景中的精排服务实践
- Linux 3.13.0删除了Netlink API函数genl_register_ops() / genl_unregister_ops()
- ios查看帧率的软件_iOS开发-自己写一个实时显示fps帧数的小控件
- Hulu俱乐部分享之兴趣篇
- 为了治好拖延症,我祭出了这个自虐的项目,把我搞的卧槽卧槽的
- AD(Altium Designer)导出BOM时出错处理
- vmware启动虚拟机提示“无法连接虚拟设备ide1:0,主机上没有相对应的设备“
- 仿vivo控制中心下载_仿vivo控制中心下载_手机控制中心app
- 论文笔记32 -- Conformer: Local Features Coupling Global Representations for Visual Recognition
- python中IP处理模块IPy
- 关于使用Pytorch时,训练集模型表现很好但测试集模型表现极差的原因