zoukankan      html  css  js  c++  java
  • codeforces 483A. Counterexample 解题报告

    题目链接:http://codeforces.com/problemset/problem/483/A

    题目意思:给出一个区间 [l, r],要从中找出a, b, c,需要满足 a, b 互质,b, c 互质,但是 a, c 不互质,也就是除了 1 之后还有其他公约数。要求 1<= a < b < c <= r,也就是 a, b, c 两两不相等的。如果找不出则输出 -1。

        首先很容易知道,如果 [l, r] 这个区间只有两个数,那么肯定没有答案。还有一种情况是,如果 [l, r] 这个区间只有 三个数,且 l,r 同时为奇数,那么都是无解。除此都可以找出 3 个数满足条件。这三个数不难找出:偶数,奇数,偶数(连续的三个数) 绝对符合条件。找出第一个符合条件的最小偶数,再这样输出即可。

        有个比较卑鄙的地方是 l 有可能等于 r,此时也是无解的。

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstdlib>
     4 #include <cstring>
     5 #include <algorithm>
     6 using namespace std;
     7 
     8 typedef __int64 LL;
     9 
    10 int main()
    11 {
    12     LL l, r, interval;
    13     while (scanf("%I64d%I64d", &l, &r) != EOF)
    14     {
    15          interval = r - l;
    16          if (interval == 0 || interval == 1 || (interval == 2 && l & 1  && r & 1))
    17             printf("-1
    ");
    18          else
    19          {
    20              while (l & 1 && l < r)
    21                  l++;
    22              printf("%I64d %I64d %I64d
    ", l, l+1, l+2);  // even, odd, even
    23          }
    24     }
    25     return 0;
    26 }
  • 相关阅读:
    spring的了解以及简单框架的搭建
    动态代理
    struts2标签(转)
    使用OGNL表达式
    struts2 ValueStack
    struts2框架xml验证
    struts2 validate手动验证
    struts2自定义拦截器
    struts2文件上传
    当findById(Integer id)变成String类型
  • 原文地址:https://www.cnblogs.com/windysai/p/4049838.html
Copyright © 2011-2022 走看看