栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 2578 Linear World

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 2578 Linear World

#include<iostream>#include<cctype>#include<stdio.h>#include<string.h> using namespace std;enum {    SIZ = 32008,    LEN = 256,};struct Node {    double pos;    int sign;    char name[LEN];};int num;double L, V;Node tree[SIZ];inline bool update(double &v, double t){    if(v < t){        v = t;        return true;    }    return false;}int readIn(int &t, double &v){    scanf("%d",&num);    if(num == 0) return 0;    scanf("%lf%lf",&L,&V);    char ch;    v = 0;    for(int i=0; i<num; i++){        scanf(" %c%lf%s",&ch, &tree[i].pos, tree[i].name);        if(toupper(ch) == 'P'){ tree[i].sign = 1; if(update(v, (L-tree[i].pos)/V)){     t = i; }        }else { tree[i].sign = -1; if( update(v, (tree[i].pos)/V) ){     t = i; }        }    }    return num;}int fun(int cur){    int sign = tree[cur].sign;    if(sign > 0){        for(int i=cur+1; i<num;i++){ if(tree[i].sign != sign){     cur++; }        }    } else {        for(int i=cur-1; i>=0;i--){ if(tree[i].sign != sign){     cur--; }        }    }    return cur;}int main(){    int t;    double v;    while(readIn(t, v) > 0){        t = fun(t);        v *= 100;        v = (double)(int)(v);        v /= 100;        printf("%13.2lf %sn", v, tree[t].name);    }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/374731.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号