UVA 11947 Cancer or Scorpio 水题
Cancer or Scorpio
Time Limit: 1 Sec Memory Limit: 256 MB
题目连接
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3098
Description
Alice and Michael is a young couple who are planning on having their first child. Their wish their son Nelson was born on a special date for both of them.
Alice has investigated in the internet and has found that the period of gestation is forty weeks. These forty weeks begin to count on the first day of the last menstrual cycle.
Michael is passionate about astrology and even more about the zodiac signs, he has asked Alice to investigate the range of dates that correspond to each sign.
Sign | Begin | End |
Aquarius | January, 21 | February, 19 |
Pisces | February, 20 | March, 20 |
Aries | March, 21 | April, 20 |
Taurus | April, 21 | May, 21 |
Gemini | May, 22 | June, 21 |
Cancer | June, 22 | July, 22 |
Leo | July, 23 | August, 21 |
Virgo | August, 22 | September, 23 |
Libra | September, 24 | October, 23 |
Scorpio | October, 24 | November, 22 |
Sagittarius | November, 23 | December, 22 |
Capricorn | December, 23 | January, 20 |
Alice and Michael ask for help to calculate the date of birth of their son Nelson and his zodiac sign.
Input
The first line of input contains a single integer N, ( 1N1000) which is the number of datasets that follow.
Each dataset consists of a single line of input that contains only eight digits that represent the date of the first day of the last menstrual cycle in format MMDDYYYY.
Output
For each dataset, you should generate one line of output with the following values: The dataset number as a decimal integer (start counting at one), a space, the date of birth in format MM/DD/YYYY, a space, and the name (in lowercase) of zodiac sign that correspond according to the date of birth.
Note: Considers leap years.
Sample Input
2
01232009
01232008
Sample Output
HINT
题意
啊,有个妹子怀孕了,怀孕40周,然后问你这个孩子什么时候出生,出生后的星座是啥
题解:
啊,这个40周是什么鬼啊,我跑了一下样例,发现应该是271天,于是我就改成271,结果一发就交过了……
这道题真是迷啊
代码:
//qscqesze
#include <cstdio>
#include <cmath>
#include <cstring>
#include <ctime>
#include <iostream>
#include <algorithm>
#include <set>
#include <vector>
#include <sstream>
#include <queue>
#include <typeinfo>
#include <fstream>
#include <map>
typedef long long ll;
using namespace std;
//freopen("D.in","r",stdin);
//freopen("D.out","w",stdout);
#define sspeed ios_base::sync_with_stdio(0);cin.tie(0)
#define maxn 200001
#define mod 10007
#define eps 1e-9
//const int inf=0x7fffffff; //无限大
const int inf=0x3f3f3f3f;
/* */
//**************************************************************************************
inline ll read()
{
int x=,f=;char ch=getchar();
while(ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
while(ch>=''&&ch<=''){x=x*+ch-'';ch=getchar();}
return x*f;
}
int buf[];
inline void write(int i) {
int p = ;if(i == ) p++;
else while(i) {buf[p++] = i % ;i /= ;}
for(int j = p-; j >=; j--) putchar('' + buf[j]);
printf("\n");
} int month[]={,,,,,,,,,,,,};
int month1[]={,,,,,,,,,,,,};
int check_year(int x)
{
if(x%==)
return ;
if(x%==&&x%!=)
return ;
return ;
}
string check(int x,int y)
{
string ans;
if(x==)
{
if(y<=)
{
ans="capricorn";
return ans;
}
else
{
ans="aquarius";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="aquarius";
return ans;
}
else
{
ans="pisces";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="pisces";
return ans;
}
else
{
ans="aries";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="aries";
return ans;
}
else
{
ans="taurus";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="taurus";
return ans;
}
else
{
ans="gemini";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="gemini";
return ans;
}
else
{
ans="cancer";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="cancer";
return ans;
}
else
{
ans="leo";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="leo";
return ans;
}
else
{
ans="virgo";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="virgo";
return ans;
}
else
{
ans="libra";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="libra";
return ans;
}
else
{
ans="scorpio";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="scorpio";
return ans;
}
else
{
ans="sagittarius";
return ans;
}
}
else if(x==)
{
if(y<=)
{
ans="sagittarius";
return ans;
}
else
{
ans="capricorn";
return ans;
}
}
}
int main()
{
int t=read();
for(int cas=;cas<=t;cas++)
{
string s;
cin>>s;
char ch;
int day=,mon=,ye=;
ch=s[];
mon+=ch-'';
ch=s[];
mon=mon*+ch-''; ch=s[];
day+=ch-'';
ch=s[];
day=day*+ch-''; ch=s[];
ye+=ch-'';
ch=s[];
ye=ye*+ch-'';
ch=s[];
ye=ye*+ch-'';
ch=s[];
ye=ye*+ch-''; int now=;
while(now<)
{
now++;
day++;
//cout<<mon<<" "<<day<<" "<<ye<<" "<<now<<endl;
if(check_year(ye))
{
if(day>=month[mon])
{
day=;
mon++;
if(mon>)
{
mon=;
ye++;
}
}
}
else
{
if(day>=month1[mon])
{
day=;
mon++;
if(mon>)
{
mon=;
ye++;
}
}
}
}
if(mon<)
cout<<cas<<""<<mon;
else
cout<<cas<<" "<<mon;
if(day<)
cout<<"/0"<<day<<"/"<<ye<<" "<<check(mon,day)<<endl;
else
cout<<"/"<<day<<"/"<<ye<<" "<<check(mon,day)<<endl;
}
}
UVA 11947 Cancer or Scorpio 水题的更多相关文章
- UVa 11636 Hello World! (水题思维)
题意:给你一个数,让你求需要复制粘贴多少次才能达到这个数. 析:这真是一个水题,相当水,很容易知道每次都翻倍,只要大于等于给定的数就ok了. 代码如下: #include <iostream&g ...
- uva 489 Hangman Judge(水题)
题目:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&am ...
- uva 10252 - Common Permutation 字符串水题
题意:給定兩個小寫的字串a與b,請印出皆出現在兩字串中的字母,出現的字母由a~z的順序印出,若同字母出現不只一次,請重複印出但不能超過任一字串中出現的次數.(from Ruby兔) 很水,直接比较输出 ...
- UVa 10340 - All in All 水题 难度: 0
题目 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&a ...
- UVA 11100 The Trip, 2007 水题一枚
题目链接:UVA - 11100 题意描述:n个旅行箱,形状相同,尺寸不同,尺寸小的可以放在尺寸大的旅行箱里.现在要求露在最外面的旅行箱的数量最少的同时满足一个旅行箱里放的旅行箱的数量最少.求出这样满 ...
- UVA 11461 - Square Numbers 数学水题
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...
- uva 11059 maximum product(水题)——yhx
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAB1QAAAMcCAIAAABo0QCJAAAgAElEQVR4nOydW7msuhKF2wIasIAHJK
- uva 10976 fractions again(水题)——yhx
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAB3gAAAM+CAIAAAB31EfqAAAgAElEQVR4nOzdO7KtPJum69GEpAcVQQ ...
- UVa 3602 - DNA Consensus String 水题 难度: 0
题目 https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_pr ...
随机推荐
- DirectFB简介以及移植[一]【转】
转自:https://blog.csdn.net/wavemcu/article/details/39251805 ****************************************** ...
- hibernate学习之一 框架配置
hibernate 框架 1.hibernate框架应用在javaee三层结构中的dao层框架 2.好处就是不需要写复杂jdbc代码,不需要sql语句实现 3.是开源的轻量级框架 hibernate使 ...
- docker stack 部署 filebeat
=============================================== 2018/7/21_第3次修改 ccb_warlock 更新 ...
- vue引入elementUI 报错
在main.js里面引入import 'element-ui/lib/theme-default/index.css'中报错,无法启动项目,这是把package.json里面的webpack改成 1 ...
- tftp的安装
下载并且安装软件xinetd tftp tftpd sudo apt-get install xinetd tftp tftpd 在/etc/xinetd.d/下建立一个配置文件tftp sudo v ...
- Python列表(list)
序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. 此外,Python已经内置确定序列的长度以及确定最大和最小的元素 ...
- 本地为Windows,使用Xshell登录Linux云主机
以某东的云主机为实例 1. 下载并安装远程登录软件 下载Xshell软件 下载后双击xshell5_5.0.1332.exe进行安装 2. 安装完成,打开Xshell,并点击新建,根据要求输入相应参数 ...
- IntelliJ IDEA 去除IDE自动的参数名 提示功能
- MySQL学习笔记:循环生成5万行id连续的数据
# ---- mysql循环生成5万行id连续的数据 ---- /* id 1 2 3 4 …… */ CREATE TABLE tb( id ) NOT NULL AUTO_INCREMENT, V ...
- Owin 自定义中间件(2)中间件进阶
前面一篇文章简单的介绍了中间件的应用 下面编写一个自定义的中间件类库,并加入中间件参数以及引入日志记录中间件的异常 下面来看下中间件的构造,参数可以自定义 这里我定义了一个参数类 编写中间件需要引入 ...