uva--188+模拟
2014-11-07 14:22
232 查看
这道题的难点主要是在题意的理解,理解题意以后的话就完全可以按照题目给定的算法去模拟了。然后值得注意的是C的初值,原先我认为需要枚举C的初值
后面看了一下别人的题解发现可以直接取0.
代码如下:
后面看了一下别人的题解发现可以直接取0.
代码如下:
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int f(char str[20]) { int len=strlen(str); int sum=0; for(int i=0;i<len;i++) sum=sum*32+(str[i]-'a'+1); return sum; } int w[100],n; int solve(int c) { int i,j,k; for(i=0;i<n;i++) for(j=i+1;j<n;j++) if(((c/w[i])%n)==((c/w[j])%n)) return solve(min((c/w[i]+1)*w[i],(c/w[j]+1)*w[j])); return c; } int main() { int i,k,j; char str[100]; while(gets(str)) { char s[100],ch[100]; strcpy(s,str); j=0; n=0; int len=strlen(str); for(i=0;i<len;) { while(str[i]>='a'&&str[i]<='z') { ch[j++]=str[i]; i++; } if(str[i]==' '||i==len) { ch[j]='\0'; w[n++]=f(ch); while(str[i]==' ') i++; j=0; } } int ans=solve(0); printf("%s\n%d\n\n",s,ans); } return 0; }
相关文章推荐
- [模拟]Perfect Hash UVA188
- 【暴力模拟】UVA 1594 - Ducci Sequence
- UVALive - 7511 Multiplication Table (模拟)
- UVA602 日期计算(2)+模拟+细节
- UVA - 10881-Piotr's Ants-思路题/模拟
- UVA 12657(双向链表模拟)
- ACM学习历程——UVA 127 "Accordian" Patience(栈;模拟)
- UVA 12504(模拟)
- UVaLive 6802 Turtle Graphics (水题,模拟)
- uva201(poj2445) Squares(模拟)
- UVALive 4723 水模拟
- uva 1352 LA3401 - Colored Cubes(模拟,4级)
- UVA 299 Train Swapping 列车交换 冒泡排序简单模拟
- UVA 11054 Wine trading in Gergovia 葡萄酒交易 贪心+模拟
- UVA 10371 POJ 2351 ZOJ 1916 Time Zone(模拟)
- 模拟 UVa 706 LC-Display
- uva 101 - The Blocks Problem(模拟)
- UVALive 6269 Digital Clock --枚举,模拟
- Uva 177 Paper Folding(模拟?Orz)
- UVa 706 / POJ 1102 LCD Display (模拟)