CSU1626: Time Warp

Description

Input

Output

Sample Input

4
20 after 8
126 til 4
180 til 1
0 after 12

Sample Output

Case 1: 8:47:16
Case 2: 3:39:16
Case 3: 12:32:44
Case 4: 1:05:27

HINT

Source

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stack>
#include <queue>
#include <map>
#include <set>
#include <vector>
#include <math.h>
#include <bitset>
#include <algorithm>
#include <climits>
using namespace std;

#define LS 2*i
#define RS 2*i+1
#define UP(i,x,y) for(i=x;i<=y;i++)
#define DOWN(i,x,y) for(i=x;i>=y;i--)
#define MEM(a,x) memset(a,x,sizeof(a))
#define W(a) while(a)
#define LL long long
#define N 25
#define MOD 19999997
#define INF 0x3f3f3f3f
#define EXP 1e-8

int t,hour,a,b,r,cas=1,m,s;
double minute,second;
char str[10];

void setA()
{
    if(r<=0)
        r+=360;
    minute = r/5.5;
    W(minute>=60)
    {
        hour++;
        minute-=60;
    }
    if(hour>12)
        hour-=12;
    m = (int)minute;
}

void setT()
{
    if(r>=0) r-=360;
    minute=r/5.5;
    hour--;
    W(minute<=-60)
    {
        hour--;
        minute+=60;
    }
    if(hour<=0)
        hour+=12;
    if(fabs(minute)<=EXP)
    {
        hour++;
        if(hour>12)
            hour-=12;
    }
    else minute+=60;
    m = (int)minute;
}

int main()
{
    scanf("%d",&t);
    W(t--)
    {
        scanf("%d%s%d",&a,str,&hour);
        b = 30*(12-hour);
        r = a-b;
        if(str[0]=='a')
            setA();
        else
            setT();
        second = (minute-(int)minute)*60;
        s = (int)(second+0.5);
        printf("Case %d: %d:%02d:%02d\n",cas++,hour,m,s);
    }

    return 0;
}
时间: 2025-01-21 22:20:43

CSU1626: Time Warp的相关文章

CUDA 6 ---- Warp解析

Warp 逻辑上,所有thread是并行的,但是,从硬件的角度来说,实际上并不是所有的thread能够在同一时刻执行,接下来我们将解释有关warp的一些本质. Warps and Thread Blocks warp是SM的基本执行单元.一个warp包含32个并行thread,这32个thread执行于SMIT模式.也就是说所有thread执行同一条指令,并且每个thread会使用各自的data执行该指令. block可以是一维二维或者三维的,但是,从硬件角度看,所有的thread都被组织成一维

warp()和wrapAll()区别

关键词:包裹 warp() html:  <p>第一个</p>  <p>第二个</p> jquery:   $("div").wrap("p") 结果: <div> <p>第一个</p> </div> <div> <p>第一个</p> </div> wrapAll() html:  <p>第一个</p>

用Houdini实现substance的warp节点

看同事在substance演示warp节点感觉比较牛逼,推了下方程: SDF图: 变形的图: 结果: Houdini里实现,第一步实现二维的gradient(sdf),形成二维的梯度场,因为一定要在uv空间操作,所以得在sop映射个uv. 把求出来的梯度放到N属性上.为了方便的观看向量.节点网络: <1> grad节点是求二维的sdf的梯度 这里面的map 用的上面的sdf贴图. // sample sdf texture float f_tex(string map;float u;floa

net core quartz调度 warp打包 nssm部署到windowsservice

介绍下一款vue.js实现的基于core2.1 quartz.net调度框架,独立部署不依赖数据库,只需要实现不同业务接口,配置调度时间即可 github:https://github.com/cq-panda/Quartz.NetUI 注意事项: 如果部署在iis下,需要实现对home/index间隔时间进行激活,否则quartz将停止调度 如果使用dotnet Quartz.NET.Web.dll(quartz不会停止调度),需要考虑重启电脑后重新启动 所以: 部署在windowsservi

warp 流式布局

代码: import 'package:flutter/material.dart'; class WarpDemo extends StatefulWidget { WarpDemo({Key key}) : super(key: key); @override _WarpDemoState createState() => _WarpDemoState(); } class _WarpDemoState extends State<WarpDemo> { List<Widget

基于EmguCV的摄像机标定及矫正

标签: EmguCV摄像头标定C# 2015-05-03 14:55 501人阅读 评论(6) 收藏 举报  分类: C# 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 前言 之前用OpenCV做过摄像机标定及矫正,现在平台换了,改用C#,就用EmguCV做一下,其实就是OpenCV的C#版. 在EmguCV中有两类摄像机标定的类,一个是CvInvoke类,一个是CameraCalibration类,两种标定效果差不多,只不过CvInvoke涉及的函数大多都是指针类型的

根据76大细分词性对单词进行归组(二)

词性的重要性不言而喻,尤其是对于自然语言处理来说,哪怕就是记单词,根据词性对单词进行归组也是非常有帮助的. superword是一个Java实现的英文单词分析软件,主要研究英语单词音近形似转化规律.前缀后缀规律.词之间的相似性规律等等. 各大词性及其包括的词: 32.N-COUNT-COLL(可数集合名词) (词数:50) 1 aristocracy army array audience band 2 cast chapter command commission committee 3 co

Lua总结一

值和类型(Values and Types) Lua是一门动态类型语言,这意味着变量没有类型,只有值有类型.语言没有类型定义,所有值携带自己的类型. Lua中所有的值都是一等公民,这意味着所有的值都可以存储在变量中,作为参数传递给其他函数,作为函数的结果返回. 值得注意的是这点对函数也成立,在Java中函数是没这个待遇的.比如对一个列表排序,需要一个比较函数,Lua可以直接传递比较函数,而Java需要为这个比较函数创建一个类型,然后传递这个类型的实例. 来看一个例子,将一个列表从大到小排列: L

CUDA, 软件抽象的幻影背后 之三

本文原载于我的主页:planckscale.info,转载于此. 版权声明:原创作品,欢迎转载,但转载请以超链接形式注明文章来源(planckscale.info).作者信息和本声明,否则将追究法律责任. 上一篇中谈到了编程模型中的Block等概念如何映射到硬件上执行,以及CUDA如何用并行来掩盖延迟.这一篇继续剖析SIMT,谈一谈控制流分叉,指令吞吐和线程间通讯机制. 虽然我们说warp中的线程类似于SIMD,但事实上它是真正的线程.warp中的每一个thread都有自己的指令地址寄存器,允许