1272: 【基础】求P进制数的最大公因子与最小公倍数

时间限制: 1 Sec 内存限制: 16 MB

提交: 684 解决: 415

[提交] [状态] [讨论版] [命题人:外部导入]

题目描述
有两个P进制的整数A,B,求出A,B的最大公因子与最小公倍数,并仍以P进制数的形式输出。 输入
一行,为P A B。(2≤P≤9) 输出
两行 第一行为最大公因子 第二行为最小公倍数 样例输入
2 110 1001 样例输出
(110,1001)=11
[110,1001]=10010

来源/分类

2003年江苏省小学生信息学(计算机)奥赛


题解如下

#include<stdio.h>
#include<string.h>
#include<math.h>
long long int transfer_ten(char *a,int LEN,int jin_zhi)
{
long long int sum=0;
int position=0;
for(int i=LEN-1;i>=0;i--)
{
sum+=(a[i]-'0')*pow(jin_zhi, position++); }
return sum; } void trans_print(long long int zhi,int jin_zhi)
{
char array[99999];
if(zhi==0)
{
array[0]='0';
}
else
{
for(int i=0; ;i++)
{
if(zhi)
{
array[i]=(zhi%jin_zhi+'0');
zhi/=jin_zhi;
}
else
{
break;
}
}
}
int LEN=(int)strlen(array);
for(int i=LEN-1;i>=0;i--)
{
printf("%c",array[i]);
} }
int main()
{
int jin_zhi;
char ar[9999],br[9999];
scanf("%d%s%s",&jin_zhi,ar,br);
int LEN_ar=(int)strlen(ar);
int LEN_br=(int)strlen(br);
long long int sum_ar=transfer_ten(ar, LEN_ar, jin_zhi);
long long int sum_br=transfer_ten(br, LEN_br, jin_zhi); //交换并求 约数,倍数
if(sum_ar>sum_br)
{
long long temp;
temp=sum_ar;
sum_ar=sum_br;
sum_br=temp;
}
long long int product=sum_ar*sum_br;
long long int yu_shu=sum_ar%sum_br;
while (yu_shu)
{
sum_ar=sum_br;
sum_br=yu_shu;
yu_shu=sum_ar%sum_br;
}
long long int max_yue=sum_br;
long long int min_bei=product/sum_br;
printf("(");
for(int i=0;i<LEN_ar;i++)
printf("%c",ar[i]);
printf(",");
for(int i=0;i<LEN_br;i++)
printf("%c",br[i]);
printf(")=");
trans_print(max_yue, jin_zhi);
printf("\n"); printf("[");
for(int i=0;i<LEN_ar;i++)
printf("%c",ar[i]);
printf(",");
for(int i=0;i<LEN_br;i++)
printf("%c",br[i]);
printf("]=");
trans_print(min_bei, jin_zhi); return 0;
}

1272: 【基础】求P进制数的最大公因子与最小公倍数的更多相关文章

  1. Java编程基础——运算符和进制

    Java编程基础——运算符和进制 摘要:本文主要介绍运算符和进制的基本知识. 说明 分类 Java语言支持如下运算符: ◆ 算术运算符:++,--,+,-,*,/,%. ◆ 赋值运算符:=,+=,-= ...

  2. [codevs1157]2^k进制数

    [codevs1157]2k进制数 试题描述 设r是个2k 进制数,并满足以下条件: (1)r至少是个2位的2k 进制数. (2)作为2k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. ...

  3. noip2006 2^k进制数

    设r是个2k进制数,并满足以下条件: (1)r至少是个2位的2k进制数. (2)作为2k进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. (3)将r转换为2进制数q后,则q的总位数不超过w ...

  4. 关于不同进制数之间转换的数学推导【Written By KillerLegend】

    关于不同进制数之间转换的数学推导 涉及范围:正整数范围内二进制(Binary),八进制(Octonary),十进制(Decimal),十六进制(hexadecimal)之间的转换 数的进制有多种,比如 ...

  5. NOIP2006 2k进制数

    2^k进制数 题目描述 设r是个2^k 进制数,并满足以下条件: (1)r至少是个2位的2^k 进制数. (2)作为2^k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. (3)将r转换 ...

  6. P1066 2^k进制数

    传送门 题目描述 设r是个2^k 进制数,并满足以下条件: (1)r至少是个2位的2^k 进制数. (2)作为2^k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. (3)将r转换为2进 ...

  7. 洛谷 P1066 2^k进制数

    P1066 2^k进制数 题目描述 设r是个2^k 进制数,并满足以下条件: (1)r至少是个2位的2^k 进制数. (2)作为2^k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. ( ...

  8. java标签(label)求16进制字符串的整数和 把一个整数转为4个16进制字符表示

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #4f76cb } p.p2 { margin: 0.0px 0. ...

  9. 一本通1649【例 2】2^k 进制数

    1649:[例 2]2^k 进制数 时间限制: 1000 ms         内存限制: 524288 KB [题目描述] 原题来自:NOIP 2006 提高组 设 r 是个 2k 进制数,并满足以 ...

随机推荐

  1. 怎么用一行HTML代码搭建一个谷歌镜像?

    <iframe src="google.com"></iframe>

  2. day05基本运算符,格式化输出,垃圾回收机制

    内容大纲:1.垃圾回收机制详解(了解) 引用计数 标记清除 分代回收 2.与用户交互 接收用户输入 # python3中 input # python2.7(了解) input raw_input 格 ...

  3. ES6引入的Reflect对象目的何在?

    Reflect对象其实就是为了取代Object对象.取代原因有一下几点: 1)Object对象的一些内部方法放在了Reflect上面,比如:Object.defineProperty.主要是优化了语言 ...

  4. Oracle批量插入有日期类型数据

    例如现在有张表 id(number) startTime(date) name(varchar2) 1 2017-08-13  zhangsan 2 2017-08-14  zhangsan 需要批量 ...

  5. openwrt sdk 编译工具 及 hello world

    需要先在 make menuconfig 中打开 sdk make -j4在 bin\targets\ramips\mt7620生成一个openwrt-sdk-ramips-mt7620_gcc-7. ...

  6. 如何优雅的使用AbpSettings

    在Abp中配置虽然使用方便,但是每个配置要先定义key,要去provider中定义,再最后使用key从ISetting中获取还是挺麻烦的一件事, 最主要是获取修改的时候,比如,修改用户配置,是从获取一 ...

  7. 【python系统学习10】布尔值

    python的数据类型有好多个,前边写过字符串.整数和浮点数这三种. 本节来整理另一种简单数据类型--布尔值 布尔值(bool) 布尔值和其数据值 计算机可以用数据进行判断,若判断为真则执行特定条件中 ...

  8. go 创建slice的方式

    1.直接声明:var slice []int 2.new: slice := *new([]int) 3.字面量:slice := []int{1,2,3,4,5} 4.make: slice :=  ...

  9. js 实现端口列表话

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. 解开Service Mesh的神秘面纱

    一.什么是Service Mesh? 下面是 Willian Morgan 对 Service Mesh 的解释: A Service Mesh is a dedicated infrastructu ...