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. centos7下安装docker 以及简单使用

    一 环境准备1.虚拟机or物理机 2.centos7系统(稳定,对docker支持友好) 二 安装过程step1:使用yum命令进行安装 yum install -y docker备注:-y 表示不询 ...

  2. 转: angularjs select 赋值 ng-options配置方式

    摘自: http://blog.csdn.net/chwshuang/article/details/53861249 数组方式 数据是数组 $scope.years = [2014, 2015, 2 ...

  3. http协议 c++ 接收

    http消息格式:header+\r\n\r\n+ chunkLen + \r\n + chunkData + \r\n + chunkLen + \r\n + chunkData +\r\n + 0 ...

  4. Codeforces Round #609 (Div. 2) A到C题

    签到,乘以两个相邻的合数 #include<bits/stdc++.h> using namespace std; int main(int argc, char const *argv[ ...

  5. C#中的函数(三)参数传递及返回值

    接前面二篇,继续开始新的研究 前面忘了说什么是主调函数与被调函数 主调函数:执行调用其它函数语句所在的函数 被调函数:被其它函数所调用的函数 简单说就是一个是发起调用者,另一个是被调用者 写个小例子说 ...

  6. input 关键字提示,对于一些特定优化来说,很有用处

    只用html就可以做出提醒操作:效果如下图 这里是代码,怎么样,很简单吧 <form action="/server" method="post"> ...

  7. CentOS7 安装 vsftpd 服务

    CentOS7 安装 vsftpd 服务 0.FTP简介 FTP服务是一个跨平台的文件共享解决方案 0.1.FTP两种模式的区分:服务端的主被动模式 1)ftp一般分为两种模式,PORTFTP和PAS ...

  8. 【JZOJ6236】【20190628】启程的日子

    题目 给你一个\(n \times m\)的01矩阵 你需要用一些矩阵加减出这个矩阵 求最少的步数,并输出方案 需要满足构造出的01矩阵是一个四联通块 $ n ,  m \le 500 $ 题解 答案 ...

  9. spark基础知识四

    围绕spark的其他特性和应用.主要包括以下几个方面 spark自定义分区 spark中的共享变量 spark程序的序列化问题 spark中的application/job/stage/task之间的 ...

  10. 只访问tomcat,不访问项目时,显示指定内容。

      1.情景展示 我们知道,将javaWeb项目部署到tomcat后,访问该项目的url路径构成是: 网路协议+"://"+ip地址+":"+tomcat设定的 ...