zoukankan      html  css  js  c++  java
  • 洛谷P2084 进制转换

    题目背景

    题目描述

    今天小明学会了进制转换,比如(10101)2 ,那么它的十进制表示的式子就是 :

    1*2^4+0*2^3+1*2^2+0*2^1+1*2^0,

    那么请你编程实现,将一个M进制的数N转换成十进制表示的式子。

    注意:当系数为0时,该单项式要省略。

    输入输出格式

    输入格式:

    两个数,M和N,中间用空格隔开。

    输出格式:

    共一行,一个十进制表示的式子。

    输入输出样例

    输入样例#1: 复制
    2 10101
    输出样例#1: 复制
    1*2^4+1*2^2+1*2^0

    说明

    对于100%的数据,1<M<10,N的位数不超过1000。

    zhx老师说noip前期要多刷水题23333

    题目很简单,找一下规律,对于不为0的数,输出即可

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<cmath>
    #include<algorithm>
    using namespace std;
    const int MAXN=1e6+10;
    inline int read()
    {
    	char c=getchar();int f=1,x=0;
    	while(c<'0'||c>'9')	{if(c=='-')	f=-1;c=getchar();}
    	while(c>='0'&&c<='9')	x=x*10+c-48,c=getchar();return x*f;
    }
    int n;
    char s[MAXN];
    bool flag=0;
    int main()
    {
    	n=read();scanf("%s",s+1);
    	int ls=strlen(s+1);
    	for(int i=1;i<=ls;i++)
    	{
    		if(s[i]!='0')
    		{
    			if(flag==0)
    			printf("%d*%d^%d",s[i]-48,n,ls-i),flag=1;
    			else
    			printf("+%d*%d^%d",s[i]-48,n,ls-i);
    		}
    	}
    	return 0;
    }
    

      

  • 相关阅读:
    Webdriver API之元素定位
    学生XX码
    网站设计基础
    JS基础知识
    1、变量和基本类型
    网上地址下载图片
    网上地址下载图片2
    微信账号
    INSERT INTO SELECT语句与SELECT INTO FROM语句
    【基础知识】创建匹配游戏
  • 原文地址:https://www.cnblogs.com/zwfymqz/p/7801323.html
Copyright © 2011-2022 走看看