一个计算迟到早退违纪扣分的东西

题意简单明了

情况有点多,分各种情况讨论,有点麻烦但是难度不大

一次性写的所以代码很乱,就当留给自己看吧

上代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<bitset>
#include<cassert>
#include<cctype>
#include<cmath>
#include<cstdlib>
#include<ctime>
#include<deque>
#include<iomanip>
#include<list>
#include<map>
#include<queue>
#include<set>
#include<stack>
#include<vector>
#include <vector>
#include <iterator>
#include <utility>
#include <sstream>
#include <limits>
#include <numeric>
#include <functional>
using namespace std;
#define gc getchar()
#define mem(a) memset(a,0,sizeof(a))
//#define sort(a,n,int) sort(a,a+n,less<int>()) #define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef pair<int,int> pii;
typedef char ch;
typedef double db; const double PI=acos(-1.0);
const double eps=1e-6;
const ll mod=1e9+7;
const int inf=0x3f3f3f3f;
const int maxn=1e5+10;
const int maxm=100+10; bool compare(int a, int b)
{
return a < b;//升序
} int main()
{
int n = 0;
char a[20];
int a1[6];
char s;
while(1)
{
cin >>n;
if(n == 0)break;
int points = 0;
while(n--)
{
cin >>a;
s = a[0];
int pool = 0;
int counter = 0;
for(int i = 2;i<20;i++)
{
if(a[i]==':' || a[i]=='\0')
{
a1[counter] = pool;
counter++;
pool = 0;
}
else
{
pool = pool*10 +a[i]-48;
}
}
/*
cout <<s<<endl;////
for(int i = 0;i<6;i++)////
{
cout<<a1[i]<<endl;
}
*/
if(s == 'D')
{
if(a1[0] < 9)
{
if(a1[3]-a1[0] > 8)
{
if(a1[3]-8 > 8);
else if(a1[3]-8 == 8 && a1[4]-30 > 0);
else if(a1[3]-8 == 8 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!11"<<endl;
}
}
else if(a1[3]-a1[0] == 8 && a1[4]-a1[1] > 0)
{
if(a1[3]-8 > 8);
else if(a1[3]-8 == 8 && a1[4]-30 > 0);
else if(a1[3]-8 == 8 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!11"<<endl;
}
}
else if(a1[3]-a1[0] == 8 && a1[4]-a1[1] == 0 && a1[5]-a1[2] >= 0)
{
if(a1[3]-8 > 8);
else if(a1[3]-8 == 8 && a1[4]-30 > 0);
else if(a1[3]-8 == 8 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!11"<<endl;
}
}
else
{
points++;
//cout<<"!1"<<endl;
}
}
else if(a1[0]==9 && a1[1]<30)
{
if(a1[3]-a1[0] > 8)
{
if(a1[3]-8 > 8);
else if(a1[3]-8 == 8 && a1[4]-30 > 0);
else if(a1[3]-8 == 8 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!21"<<endl;
}
}
else if(a1[3]-a1[0] == 8 && a1[4]-a1[1] > 0)
{
if(a1[3]-8 > 8);
else if(a1[3]-8 == 8 && a1[4]-30 > 0);
else if(a1[3]-8 == 8 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!21"<<endl;
}
}
else if(a1[3]-a1[0] == 8 && a1[4]-a1[1] == 0 && a1[5]-a1[2] >= 0)
{
if(a1[3]-8 > 8);
else if(a1[3]-8 == 8 && a1[4]-30 > 0);
else if(a1[3]-8 == 8 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!21"<<endl;
}
}
else
{
points++;
//cout<<"!2"<<endl;
}
}
else if(a1[0]==9 && a1[1]==30 && a1[2]==0)
{
if(a1[3]-a1[0] > 8)
{
if(a1[3]-8 > 8);
else if(a1[3]-8 == 8 && a1[4]-30 > 0);
else if(a1[3]-8 == 8 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!31"<<endl;
}
}
else if(a1[3]-a1[0] == 8 && a1[4]-a1[1] > 0)
{
if(a1[3]-8 > 8);
else if(a1[3]-8 == 8 && a1[4]-30 > 0);
else if(a1[3]-8 == 8 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!31"<<endl;
}
}
else if(a1[3]-a1[0] == 8 && a1[4]-a1[1] == 0 && a1[5]-a1[2] >= 0)
{
if(a1[3]-8 > 8);
else if(a1[3]-8 == 8 && a1[4]-30 > 0);
else if(a1[3]-8 == 8 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!31"<<endl;
}
}
else
{
points++;
//cout<<"!3"<<endl;
}
}
else
{
points++;
//cout<<"!8"<<endl;
}
}
else if(s == 'E')
{
if(a1[0] < 12)
{
if(a1[3]-a1[0] > 9)
{
if(a1[3]-8 > 9);
else if(a1[3]-8 == 9 && a1[4]-30 > 0);
else if(a1[3]-8 == 9 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!41"<<endl;
}
}
else if(a1[3]-a1[0] == 9 && a1[4]-a1[1] > 0)
{
if(a1[3]-8 > 9);
else if(a1[3]-8 == 9 && a1[4]-30 > 0);
else if(a1[3]-8 == 9 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!41"<<endl;
}
}
else if(a1[3]-a1[0] == 9 && a1[4]-a1[1] == 0 && a1[5]-a1[2] >= 0)
{
if(a1[3]-8 > 9);
else if(a1[3]-8 == 9 && a1[4]-30 > 0);
else if(a1[3]-8 == 9 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!41"<<endl;
}
}
else
{
points++;
//cout<<"!4"<<endl;
}
}
else if(a1[0]==12 && a1[1]<30)
{
if(a1[3]-a1[0] > 9)
{
if(a1[3]-8 > 9);
else if(a1[3]-8 == 9 && a1[4]-30 > 0);
else if(a1[3]-8 == 9 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!51"<<endl;
}
}
else if(a1[3]-a1[0] == 9 && a1[4]-a1[1] > 0)
{
if(a1[3]-8 > 9);
else if(a1[3]-8 == 9 && a1[4]-30 > 0);
else if(a1[3]-8 == 9 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!51"<<endl;
}
}
else if(a1[3]-a1[0] == 9 && a1[4]-a1[1] == 0 && a1[5]-a1[2] >= 0)
{
if(a1[3]-8 > 9);
else if(a1[3]-8 == 9 && a1[4]-30 > 0);
else if(a1[3]-8 == 9 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!51"<<endl;
}
}
else
{
points++;
//cout<<"!5"<<endl;
}
}
else if(a1[0]==12 && a1[1]==30 && a1[2]==0)
{
if(a1[3]-a1[0] > 9)
{
if(a1[3]-8 > 9);
else if(a1[3]-8 == 9 && a1[4]-30 > 0);
else if(a1[3]-8 == 9 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!61"<<endl;
}
}
else if(a1[3]-a1[0] == 9 && a1[4]-a1[1] > 0)
{
if(a1[3]-8 > 9);
else if(a1[3]-8 == 9 && a1[4]-30 > 0);
else if(a1[3]-8 == 9 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!61"<<endl;
}
}
else if(a1[3]-a1[0] == 9 && a1[4]-a1[1] == 0 && a1[5]-a1[2] >= 0)
{
if(a1[3]-8 > 9);
else if(a1[3]-8 == 9 && a1[4]-30 > 0);
else if(a1[3]-8 == 9 && a1[4]-30 == 0 && a1[5] >= 0);
else
{
points++;
//cout<<"!61"<<endl;
}
}
else
{
points++;
//cout<<"!6"<<endl;
}
}
else
{
points++;
//cout<<"!7"<<endl;
}
}
}
if(points == 0)
{
cout<<"All OK"<<endl;
}
else if(points > 3)
{
cout<<"Issue Show Cause Letter"<<endl;
}
else
{
cout <<points <<" Point(s) Deducted"<<endl;
}
}
return 0;
}

E - Helping the HR Gym - 102040E的更多相关文章

  1. Gym102040 .Asia Dhaka Regional Contest(寒假自训第9场)

    B .Counting Inversion 题意:给定L,R,求这个区间的逆序对数之和.(L,R<1e15) 思路:一看这个范围就知道是数位DP. 只是维护的东西稍微多一点,需要记录后面的各种数 ...

  2. 2018-2019 ACM-ICPC, Asia Dhaka Regional Contest

    目录 Contest Info Solutions B. Counting Inversion C. Divisors of the Divisors of An Integer E. Helping ...

  3. 【二分】NEERC15 L Landscape Improved(2015-2016 ACM-ICPC)(Codeforces GYM 100851)

    题目链接: http://codeforces.com/gym/100851 题目大意: 一个宽度为N的网格图,i上有h[i]高的方块.现在你有W个方块,问怎么放使得最终的最高点最高. 只要一个格子的 ...

  4. 记2016腾讯 TST 校招面试经历,电面、笔试写代码、技术面、hr面,共5轮

    (出处:http://www.cnblogs.com/linguanh/) 前序: 距离  2016 腾讯 TST 校招面试结束已经5天了,3月27日至今,目前还在等待消息.从投简历到两轮电面,再到被 ...

  5. Html --用简单的<hr>实现多样化分割效果

    最基本的:<hr width=300 size=1 color=#5151A2 align=center noshade>. <!--其中 width 规定线条的长度,还可以是百分比 ...

  6. <hr>标签不止创建html水平线也可以画圆噢

    看到上面这张图,第一反应是用photoshop类似作图软件画出来的,但那是华丽丽的错觉.一个简单的<hr>标签就能完成漂亮的效果,而不仅仅是创建html水平线.想知道怎么实现吗?Let's ...

  7. ACM: Gym 101047M Removing coins in Kem Kadrãn - 暴力

     Gym 101047M Removing coins in Kem Kadrãn Time Limit:2000MS     Memory Limit:65536KB     64bit IO Fo ...

  8. ACM: Gym 101047K Training with Phuket's larvae - 思维题

     Gym 101047K Training with Phuket's larvae Time Limit:2000MS     Memory Limit:65536KB     64bit IO F ...

  9. ACM: Gym 101047E Escape from Ayutthaya - BFS

    Gym 101047E Escape from Ayutthaya Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%I6 ...

  10. ACM: Gym 101047B Renzo and the palindromic decoration - 手速题

     Gym 101047B  Renzo and the palindromic decoration Time Limit:2000MS     Memory Limit:65536KB     64 ...

随机推荐

  1. 计算机组成原理 L02 指令集体系结构(ISA)复习-1

    计算机组成原理 L02 指令集体系结构(ISA)复习-1 复习-1 用作例题/课后题整理 复习-2 用作理论知识点整理 如何使用大常数 由于大数值范围:[-2^31, 2^31-1],而I型指令常数字 ...

  2. AI图像生成的"套娃"生意:一个月入240万美元的AI工具站

    AI图像生成的"套娃"生意:一个月入240万美元的AI工具站 今天和大家分享一个让我既佩服又警醒的案例--flux1.ai. 这个项目用最简单粗暴的方式,在AI图像生成这个红海市场 ...

  3. 图解JavaScript原型:原型链及其分析 02 | JavaScript图解

    ​​ 任何函数既可以看成一个实例对象又可以看成一个函数 作为一个实例对象其隐式原型对象指向其构造函数的显式原型对象 作为一个函数其显式原型对象指向一个空对象 任何一个函数其隐式原型对象指向其构造函数的 ...

  4. 玩转集群配置中心,一文带你了解 Taier 控制台

    ​ 原文地址:玩转集群配置中心,一文带你了解Taier控制台丨DTMO 03期直播回顾(内含视频+课件) 课程视频回顾:Taier基础教程(二):Taier1.1新功能详解&控制台介绍_哔哩哔 ...

  5. pkuwc and noiwc游记

    博主有奇怪的打字癖好 eg(虽然可能并不会包含其中的某些东西): 豪吃=好吃 事=是 勒si人呐=这是人啊 姜汁=姜经理=副教 pkuwc游记 day -1 浙江的天气预报好神秘,怎么零下到十多度啊, ...

  6. Spring Boot 集成 ShardingSphere-JDBC 配置示例

    概述 Apache ShardingSphere‐JDBC 旨在充分合理地在分布式的场景下利用关系型数据库的计算和存储能力,而并非实现一个全新的关系型数据库. 关系型数据库当今依然占有巨大市场份额,是 ...

  7. FFmpeg开发笔记(七十)Windows给FFmpeg集成AV1编码器libsvtav1

    ​AV1是一种新兴的免费视频编码标准,它由开放媒体联盟(Alliance for Open Media,简称AOM)于2018年制定,融合了Google VP10.Mozilla Daala以及Cis ...

  8. 【闲话 No.6】 Lyndon 串与 runs 相关

    约定 有些约定可能并没有被广泛认可,但是为了行文需要还是写在这里,请您理解. 在下文中,如无特殊说明,我们用 \(n\) 表示问题规模大小,比如任何字符串的大小.所有数组下标从 \(1\) 开始. 我 ...

  9. java--jdbc优化

    BeanUtils组件 程序中对javabean的操作很频繁, 所以apache提供了一套开源的api,方便对javabean的操作!即BeanUtils组件. BeanUtils组件, 作用是简化j ...

  10. java基础--StringBuffer类等、线程基础

    StringBuffer类 方法: String 增加 append(boolean b) 可以添加任意类型 的数据到容器中 insert(int offset, boolean b) 指定插入的索引 ...