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. NVIDIA-GPU归入K8S集群管理的安装文档--第二版

    一,nvidia K80驱动安装 1,  查看服务器上的Nvidia(英伟达)显卡信息,命令lspci |grep NVIDIA 2,  按下来,进行显卡驱动程序的安装,驱动程序可到nvidia的官网 ...

  2. HDU5126 stars(cdq分治)

    传送门 题意: 先有两种操作,插入和查询,插入操作则插入一个点\((x,y,z)\),查询操作给出两个点\((x_1,y_1,z_1),(x_2,y_2,z_2)\),回答满足\(x_1\leq x\ ...

  3. python3字符串的方法及注释/ 字符串格式化符号含义及格式化符号含义

     capitalize()   把字符串的第一个字符改为大写   casefold()   把整个字符串的所有字符改为小写   center(width)   将字符串居中,并使用空格填充至长度wid ...

  4. SDN Reading Notes

    网络操作编程语言:Frenetic QoS策略实施框架:PolicyCop    

  5. 网络协议 10 - Socket 编程(上)

    前面一直在说各种协议,偏理论方面的知识,这次咱们就来认识下基于 TCP 和 UDP 协议这些理论知识的 Socket 编程.     说 TCP 和 UDP 的时候,我们是分成客户端和服务端来认识的, ...

  6. luogu P2430 严酷的训练 题解

    By:Soroak 知识点:DP 思路:就是一道简单的DP 一开始我想用二维数组做 做着做着发现,没有那么难啊啊啊 完全可以用一维数组来做 我们先开两个一维数组来存每个题目的时间 一个是老王的时间,另 ...

  7. 自动签发https证书工具 cert manager

    最近cert manager进行升级,不再支持0.11以下的版本了,所以进行升级.但是发现不能直接通过更改镜像版本来升级,在Apps里的版本也是旧版本,部署后发现不支持,于是自已动手,根据文档整理了一 ...

  8. mac os 配置

    /Users/xxx/odoo-13.0/odoo-bin -c /Users/xxx/odoo-13.0/debian/odoo.conf

  9. Lab_1:练习2——使用qemu执行并调试lab1中的软件

    一.实验内容 为了熟悉使用qemu和gdb进行的调试工作,我们进行如下的小练习: (一)从CPU加电后执行的第一条指令开始,单步跟踪BIOS的执行. (二)在初始化位置0x7c00设置实地址断点,测试 ...

  10. AntDesign vue学习笔记(三)嵌套路由使用

    本项目目前结构如下 1.Login页面=>MainFrm页面=>MainFrm左部菜单,右边是显示区域可以切换子页面. 2.当点击左部菜单时,右边的子页面随着进行切换. 实现关键代码如下1 ...