hdu 4523 威威猫系列故事——过生日 小模拟
威威猫系列故事——过生日
Time Limit: 500/200 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)
Total Submission(s): 999 Accepted Submission(s): 271
大家给威威猫买了一个非常大非常大的蛋糕,蛋糕的形状是一个有n条边的凸多边形,可是威威猫的审美观有一点奇怪,他只喜欢有m条边的蛋糕,所以他要伙伴们把这个蛋糕切p次,然后给他一个只有m条边的新蛋糕。这下大家急了,这不是坑爹吗,审美观崎岖作怪。
假设蛋糕可看成一个平面含n条边的凸多边形,每一刀必须沿直线切下去,p刀之后能给威威猫切出一个m条边的蛋糕吗?
[Technical Specification]
3 <= n <= 10^100
0 < m <= 10^100
0 <= p <= 10^100
每组数据输出一行。
Sample对应的示意图如下:

思路:
很容易可以看出 一刀可以增加一条边 或者不变(不增加)
一刀也可以减少1到n-3条边
所以易知
如果 m小于3 NO
如果 m 大于等于3小于等于n YES
如果m大于n 并且p+n大于等于m 输入YES 否则NO
#include<stdio.h>
#include<string.h>
char n[111],m[111],p[111],mid[111];
int compare(char *s1,char *s2)//判断第一个是否大于等于第二个
{
int len1=strlen(s1);
int len2=strlen(s2);
if(len1>len2) return 1;
else if(len1<len2) return 0;
for(int i=0;i<len1;i++)
{
if(s1[i]>s2[i]) return 1;
else if(s2[i]>s1[i]) return 0;
}
return 1;
}
void solve(char *s1,char *s2)//求出a+p的值与m进行大小比较
{
int len=strlen(s2);
int len1=strlen(s1);
strrev(s1);
strrev(s2);
//printf("翻转后的s1:%s\n",s1);
//printf("翻转后的s2:%s\n",s2);
for(int i=0;i<len;i++)
{
s1[i]=s1[i]-'0'+s2[i]-'0'+'0';
}
// puts(s1);
for(int i=0;i<len1;i++)
{
if(s1[i]>'9')
{
s1[i]=s1[i]-10;
if(i+1==len1) {s1[len1]='1';s1[len1+1]='\0';}
else
s1[i+1]++;
}
}
strrev(s1);
//printf("算得的和:%s\n",s1);
if(compare(s1,m)) printf("YES\n");
else printf("NO\n");
}
int main()
{
while(scanf("%s %s %s",n,m,p)!=EOF)
{
if(strlen(m)==1&&m[0]-'0'<3) {printf("NO\n");continue;}
if(strcmp(p,"0")==0)
{
if(strcmp(n,m)==0) printf("YES\n");
else printf("NO\n");
continue;
} if(compare(n,m)) {printf("YES\n"); continue;}
if(strlen(p)>strlen(n))
solve(p,n);
else solve(n,p);
}
return 0;
}
hdu 4523 威威猫系列故事——过生日 小模拟的更多相关文章
- hdu 4540 威威猫系列故事——打地鼠 dp小水题
威威猫系列故事——打地鼠 Time Limit: 300/100 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total ...
- HDU 4540 威威猫系列故事——打地鼠
威威猫系列故事--打地鼠 Time Limit: 300/100 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total Su ...
- HDU 4540 威威猫系列故事——打地鼠 (状态压缩DP)
威威猫系列故事——打地鼠 Time Limit: 300/100 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total ...
- HDU--杭电--4504--威威猫系列故事——篮球梦--DP
威威猫系列故事——篮球梦 Time Limit: 300/100 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total ...
- HDUOJ----4504 威威猫系列故事——篮球梦
威威猫系列故事——篮球梦 Time Limit: 300/100 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total ...
- hdoj 4526 威威猫系列故事——拼车记
威威猫系列故事——拼车记 Time Limit: 500/200 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total ...
- 2013腾讯编程马拉松初赛第〇场(HDU 4504)威威猫系列故事——篮球梦
http://acm.hdu.edu.cn/showproblem.php?pid=4504 题目大意: 篮球赛假如我们现在已经知道当前比分 A:B,A代表我方的比分,B代表对方的比分,现在比赛还剩下 ...
- Hdoj 4540.威威猫系列故事——打地鼠 题解
Problem Description 威威猫最近不务正业,每天沉迷于游戏"打地鼠". 每当朋友们劝他别太着迷游戏,应该好好工作的时候,他总是说,我是威威猫,猫打老鼠就是我的工作! ...
- hdu4533 威威猫系列故事——晒被子
Problem Description 因为马拉松初赛中吃鸡腿的题目让不少人抱憾而归,威威猫一直觉得愧对大家,这几天他悄悄搬到直角坐标系里去住了. 生活还要继续,太阳也照常升起,今天,威威猫在第一象限 ...
随机推荐
- LDR伪指令与ADR伪指令的区别
测试代码 ldr r0, _start adr r0, _start ldr r0, =_start nop mov pc, lr _start: nop 设置代码的起始地址为 0x0c008000, ...
- 解决Android SDK Manager更新(一个更新Host的程序的原理实现和源码)
<ignore_js_op> 同学遇到了更新Android SDK的问题,而且Goagent现在也无法用来更新.就想到了用替代Host的方法,添加可用的谷歌地址来实现更新. ...
- linux JAVA JDK环境配置
export JAVA_HOME=/usr/local/jdk1.7.0_45export JRE_HOME=/usr/local/jdk1.7.0_45/jreexport CLASSPATH=.: ...
- java+eclipse+tomcat+mysql+jdbc——完美配置攻略
说明: 软件均采用最新版本,请大家详细阅读,注意每个细节,无需分门别类的百度各种教程,配置java环境这一篇就够了. 所需软件及版本(参考): java8; - jdk1.8.0_60; - jre1 ...
- 个人笔记--Servlet之过滤器实现权限拦截
一.编写一个Java类实现javax.servlet.Filter接口 package cn.edu.sxu.filter; import java.io.IOException; import ja ...
- JDBC 基础知识总结
1. 何谓JDBC --- Java Database Connectivity. 由Sun 公司提供的访问数据库的一组java类和接口,用来对数据库进行链接.发送SQL语句.处理返回结果,为开发 ...
- backbone showcase
http://www.mhtml5.com/2012/06/5119.html http://tieba.baidu.com/p/2389371223 http://www.jdon.com/tags ...
- 批量建立EXCHANGE邮件帐号建立三部曲
第一步:从AD里导出用户名(可以基于OU),将输出的CSV的DN列删除,并去除可能的测试及其它用途用户名. csvde -f users-gz.csv -d "ou=MKT gz,dc=xm ...
- Android Studio的一些技巧和使用注意事项(持续更新)
1.创建一个项目之后默认是没有assets目录的,可以手动在main目录下创建一个assets目录. 2.
- Android之获得内存剩余大小与总大小
方法一: 如何查看android对应用的内存限制 每款手机对应用的限制都是不一样的,毕竟硬件不同,我们可以使用如下方式来查看单独的应用可使用的最大内存: 执行命令: adb shell getprop ...