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

poj 3484 Showstopper

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

poj 3484 Showstopper

#include <iostream>#include <cstring>#include <cstdlib>#include <cmath>#include <vector>#include <cstdio>#include <algorithm>#define N 500005typedef long long LL;using namespace std;int n ;LL X[N] , Y[N] , Z[N];char str[55];LL cal(LL k){  LL sum = 0 , x;  for (int i = 1 ; i <= n; ++ i)  {    if (k < X[i]) continue;    x = min(k , Y[i]);    sum += (x - X[i]) / Z[i] + 1;  }  return sum;}void work(){  n = 1;  X[n] = 0;  sscanf(str , "%I64d %I64d %I64d" , &X[n] , &Y[n] , &Z[n]);  if (!X[n]) return;  memset(str , 0 , sizeof(str));  while (gets(str) , *str)    ++ n , sscanf(str , "%I64d %I64d %I64d" , &X[n] , &Y[n] , &Z[n]) , memset(str , 0 , sizeof(str));  LL l = 1 , r = 1LL << 33 , m;  while (l < r)  {    m = (l + r) >> 1;    if (cal(m) & 1)      r = m;    else l = m + 1;  }  if (l == 1LL << 33)    puts("no corruption");  else printf("%I64d %I64dn" , l , (cal(l) - cal(l - 1)));}int main(){  while(gets(str))    work();  return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/366111.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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