A 签到题

题目描述

多次询问,每次询问给一个值域范围 [l,r][l,r],要回答下列四个问题:

从这个范围内选出两个整数(两个数可相同),

(1) 这两个数的最小公倍数最大是多少?

(2) 这两个数的最小公倍数最小是多少?

(3) 这两个数的最大公约数最大是多少?

(4) 这两个数的最大公约数最小是多少?

 
 

输入描述

第一行一个数 tt 表示数据组数 (t = 10^4t=104)。

之后 tt 行,每行两个数 l, rl,r 表示一次询问(1 \le l \le r \le 10^91≤l≤r≤109)。

输出描述

对于每个询问,输出一行四个数依次表示这四个问题的答案。(四个数间恰以一个空白字符隔开,每行行末不能有多余的空白字符。)

样例输入 1

2
2 3
1 2

样例输出 1

6 2 3 1
2 1 2 1

提示

对于值域范围 [2,3][2,3]:

lcm( 2 , 3 ) = 6lcm(2,3)=6 是最大的最小公倍数

lcm( 2 , 2 ) = 2lcm(2,2)=2 是最小的最小公倍数

gcd( 3 , 3 ) = 3gcd(3,3)=3 是最大的最大公约数

gcd( 2 , 3 ) = 1gcd(2,3)=1 是最小的最大公约数

对于值域范围 [1,2][1,2]:

lcm( 1 , 2 ) = 2lcm(1,2)=2 是最大的最小公倍数

lcm( 1 , 1 ) = 1lcm(1,1)=1 是最小的最小公倍数

gcd( 2 , 2 ) = 2gcd(2,2)=2 是最大的最大公约数

gcd( 1 , 2 ) = 1gcd(1,2)=1 是最小的最大公约数

 
  针对四个问题,值域范围[l,r]内最大的最小公倍数是r*(r-1);最小的最小公倍数是(l,l)取l。最大的最大公约数是(r,r)取r,最小的最大公约数为(l,l+1)取1。注意数据范围 ,爆int了,要开longlong;还有特殊情况,[l,l],此时四个问题的答案都是l。代码如下:
#include <iostream>
#define LL long long
using namespace std;
int main()
{
int n;
scanf("%d",&n);
LL l,r;
while(n--)
{
cin>>l>>r;
if(l==r){
cout<<l;
printf(" ");
cout<<l;
printf(" ");
cout<<l;
printf(" ");
cout<<l;
}
else for(int i=;i<;i++)
{
if(i!=)printf(" ");
if(i==)cout<<r*(r-);
if(i==)cout<<l;
if(i==)cout<<r;
if(i==)printf("");
}
printf("\n");
}
return ;
}

B 麻将题

面麻的时候经常大家已经坐好了,然后抽了每个人对应的自风(也就是坐的位置),每次可以交换相邻的两个人,问让这四个人逆时针顺序依次为  东 南 西 北  最少需要交换几次。


简洁题意:可以理解为有一个长度为 44 的环,上面的元素构成一个长度为 44 的排列,每次可以交换环上相邻两个位置,问至少交换多少次,使得这个环中值为 11 的位置逆时针方向的下一个位置是值为 22 的位置,再下一个位置是值为 33 的位置,再下一个位置是值为 44 的位置(也可能不用交换就满足条件,此时答案就是 00)。

(简洁题意中,可想像成数字 1,2,3,41,2,3,4 是对应到东南西北)

 
 

输入描述

一行四个数,代表逆时针顺序给出环上的元素,保证是一个 1 \sim 41∼4 的排列。

输出描述

输出一行一个数表示最小交换次数。

样例输入 1

3 1 2 4

样例输出 1

1

提示

样例解释:交换第一个数和第四个数之后顺序就是 4,1,2,34,1,2,3 了,满足题目要求顺序(11 的逆时钟方向下个数是 22,再下个数是 33,再下个数是 44)。

  思路:总共就4!种排列方式,很容易知道交换几次可以使之按顺序排列。暴力破解。代码如下:

#include <stdio.h>
int main()
{
int a,b,c,d;
scanf("%d %d %d %d",&a,&b,&c,&d);
int e=,f=,g=;
if(a==&&b==&&c==&&d==)printf("%d\n",e);
else if(a==&&b==&&c==&&d==)printf("%d\n",e);
else if(a==&&b==&&c==&&d==)printf("%d\n",e);
else if(a==&&b==&&c==&&d==)printf("%d\n",e);
else if(a==&&b==&&c==&&d==)printf("%d\n",g);
else if(a==&&b==&&c==&&d==)printf("%d\n",g);
else if(a==&&b==&&c==&&d==)printf("%d\n",g);
else if(a==&&b==&&c==&&d==)printf("%d\n",g);
else printf("%d\n",f);
return ;
}

comet oj #7的更多相关文章

  1. Comet OJ - Contest #2 简要题解

    Comet OJ - Contest #2 简要题解 cometoj A 模拟,复杂度是对数级的. code B 易知\(p\in[l,r]\),且最终的利润关于\(p\)的表达式为\(\frac{( ...

  2. Comet OJ - Contest #2简要题解

    Comet OJ - Contest #2简要题解 前言: 我没有小裙子,我太菜了. A 因自过去而至的残响起舞 https://www.cometoj.com/contest/37/problem/ ...

  3. Comet OJ - Contest #4--前缀和

    原题:Comet OJ - Contest #4-B https://www.cometoj.com/contest/39/problem/B?problem_id=1577传送门 一开始就想着暴力打 ...

  4. Comet OJ - Contest #11 题解&赛后总结

    Solution of Comet OJ - Contest #11 A.eon -Problem designed by Starria- 在模 10 意义下,答案变为最大数的最低位(即原数数位的最 ...

  5. Comet OJ - Contest #8

    Comet OJ - Contest #8 传送门 A.杀手皇后 签到. Code #include <bits/stdc++.h> using namespace std; typede ...

  6. Comet OJ 计算机(computer)

    Comet OJ 计算机(computer) 题目传送门 题目描述 小 X 有一台奇怪的计算机. 这台计算机首先会读入一个正整数 nn,然后生成一个包含 nn 个数的序列 aa. 一开始 a_i(1 ...

  7. Comet OJ - Contest #13-C2

    Comet OJ - Contest #13-C2 C2-佛御石之钵 -不碎的意志-」(困难版) 又是一道并查集.最近做过的并查集的题貌似蛮多的. 思路 首先考虑,每次处理矩形只考虑从0变成1的点.这 ...

  8. Comet OJ 夏季欢乐赛 篮球校赛

    Comet OJ 夏季欢乐赛 篮球校赛 题目传送门 题目描述 JWJU注重培养学生的"唱,跳,rap,篮球"能力.于是每年JWJU都会举办篮球校赛,来给同学们一个切磋篮球技术的平台 ...

  9. Comet OJ 夏季欢乐赛 Gree的心房

    Comet OJ 夏季欢乐赛 Gree的心房 题目传送门 题目描述 据说每一个走进Gree哥哥心房的小姑娘都没有能够再走出来-- 我们将Gree哥哥的心房抽象成一个n \times mn×m的地图,初 ...

  10. Comet OJ 夏季欢乐赛 分配学号

    Comet OJ 夏季欢乐赛 H 分配学号 题目传送门 题目描述 今天,是JWJU给同学们分配学号的一天!为了让大家尽可能的得到自己想要的学号,鸡尾酒让大家先从 [1,10^{18}][1,1018] ...

随机推荐

  1. 201671010447 杨露露 实验十四 团队项目评审&课程学习总结

    项目 内容 这个作业属于哪个课程 2016计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验十四 团队项目评审&课程学习总结 作业学习目标 总结这学期软件工程学习获得 一 ...

  2. NOIP 2008 笨小猴

    洛谷 P1125 笨小猴 洛谷传送门 JDOJ 1539: [NOIP2008]笨小猴 T1 JDOJ传送门 Description 笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼.但是他找到 ...

  3. Spring Cloud微服务安全实战_3-4_API安全机制之认证

     认证:登录和认证是 两个概念,比如你两周.一个月,可能只登录了一次,但认证却是每次访问都要经过的步骤. 对于图中的认证不成功,也要继续处理,这个我觉得得看业务,比如管理系统,不登录就不让你访问,但对 ...

  4. 请用正则实现String.trim()

    String.prototype.trim1=function(){ return this.replace(/(^\s*)|(\s*$)/g,""); }; 写一个functio ...

  5. T1 :最小值(min)题解 ——2019.10.15

    思路: 对于 % 30 的数据,可以想到一个 Dp 方程: 其中dp[i]表示分割[1,i]的最大答案 代码: #include<cstdio> #include<cstring&g ...

  6. 【可持久化0/1Trie】【P4735】最大异或和

    Description 给定一个长度为 \(n\) 的序列 \(A\),有 \(m\) 次操作,每次要么在序列尾部再添加一个数,将序列长度 \(n\) 加一,要么给进行一次查询,给定查询参数 \(l, ...

  7. js中a + 1 < a等于true,(a ==1 && a== 2 && a==3) 等于 true如何实现

    先说a + 1 < a const a = { i: 1, valueOf: () => { if (a.i === 1) { return a.i++; } return a.i+2; ...

  8. Ajax 与 Django

    目录 Django与AJAX orm优化查询: MTV 与 MVC模型 choices 参数 update 与 save的区别 AJAX导入: Jquery 实现AJAX ajax基本语法结构 原生J ...

  9. 安装hadoop集群-cm 5.14.4

    环境 要求: centos 7 java 1.8 cm 5.14.4 mysql 5.7 4核16G 工具要求: mysql-connector-java-5.1.39.jar 1.绑定 hosts ...

  10. c++primer(第五版) 阅读笔记

    快速阅读一遍c++ primer,复习c++ 1.本书代码:http://www.informit.com/store/c-plus-plus-primer-9780321714114 2.本书结构: