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. LeetCode37 使用回溯算法实现解数独,详解剪枝优化

    本文始发于个人公众号:TechFlow,原创不易,求个关注 数独是一个老少咸宜的益智游戏,一直有很多拥趸.但是有没有想过,数独游戏是怎么创造出来的呢?当然我们可以每一关都人工设置,但是显然这工作量非常 ...

  2. 如何开发和发布一个Vue插件

    前言 Vue 项目开发过程中,经常用到插件,比如原生插件 vue-router.vuex,还有 element-ui 提供的 notify.message 等等.这些插件让我们的开发变得更简单更高效. ...

  3. python之函数介绍

    # 函数 # 什么是函数: 能完成特定功能的工具,在Python中表示能完成特定功能的代码块.(函数定义) # 为什么要用函数 :①函数可以重复调用出来,效率高,而且维护成本低 ②使程序结构看起来清晰 ...

  4. 机器学习基础——简单易懂的K邻近算法,根据邻居“找自己”

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天的文章给大家分享机器学习领域非常简单的模型--KNN,也就是K Nearest Neighbours算法,翻译过来很简单,就是K最近邻居 ...

  5. 使用openxml提取word中的文本和图片并转为Html

    使用openxml提取word中的文本和图片 使用 openXml 提取 word 中的 Text 和 Drawing 使用 openXml 将 word 中的文本和图片转为Html 使用 openX ...

  6. 2019-2020-3 20174318张致豪《网络对抗技术》Exp2 后门原理与实践

    Exp2 后门原理与实践 前期准备 一.实验目标与基础知识 1.1 实践目标 使用netcat获取主机操作Shell,cron启动 使用socat获取主机操作Shell,任务计划启动 使用MSF  m ...

  7. socket TCP 从0实现音频传输 ALSA 播放

    RTP标准是采用 UDP 发送,有不少现成的开源库,但不在本文讨论的范围内.UDP 用户数据报,不提供流程,安全传输的功能,但速度快,能提供多播,广播,没有序列号 SEQ ,有 MTU 限制,1500 ...

  8. [android]R.class里有ID,onCreate方法里调用findViewById返回空

    在做android练习,一个新手错误,记录一下: 在练习android权威编程指南时,第5章 第二个Activity部分练习,出现标题问题,代码还原如下: protected void onCreat ...

  9. 01 UIPath抓取网页数据并导出Excel(非Table表单)

    上次转载了一篇<UIPath抓取网页数据并导出Excel>的文章,因为那个导出的是table标签中的数据,所以相对比较简单.现实的网页中,有许多不是通过table标签展示的,那又该如何处理 ...

  10. Chrome开发者工具之测试应用

    一.Chrome开发者工具简介 浏览器的开发者工具(DevTools)可以帮助开发人员对网页进行布局,比如HTML+CSS,帮助前端工程师更好的调试脚本(JavaScript.jQuery)之类的,还 ...