• 洛谷 P1307 数字反转


    时间限制 1.00s

    内存限制 125.00MB




    题目描述

    给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。



    输入格式

    一个整数\(N\)



    输出格式

    一个整数,表示反转后的新数。



    输入输出样例

    输入 #1 输出 #1
    123 321
    输入 #2 输出 #2
    -380 -83



    说明/提示

    数据范围

    \(−1,000,000,000≤N≤1,000,000,000\)

    noip2011普及组第一题




    PZ' solution

    1.使用\(N \% 10\)每次取 \(N\) 的最后一位,用新的变量\(ans\)累加它;

    2.\(ans=ans*10+N \% 10\),其作用是 每次把取得的\(N\)的最后一位 变为\(ans\)的最后一位;

    3.可以发现这种做法能巧妙地解决 前置零和中间零 的问题;

    4.利用\(N=N/10\)\(N\)的最后一位消去,直到\(N\)变为\(0\)为止;

    ps.由于python负数取模的运算规则与其他语言略有不同,所以在python代码中取模时要判断\(N\)是否\(<0\)



    P1307 C++ .cpp

    #include<cstdio> //#include<stdio.h>
    using namespace std; 
    int x,ans;
    int main(){
    	scanf("%d",&x);
    	while(x!=0){
    		ans=ans*10+x%10;
    		x=x/10;
    	}
    	printf("%d",ans);
    	return 0;
    }
    
    



    P1307 Python.py

    x=int(input());
    res=0;
    
    while x!=0:
        if(x>0):
            res=res*10+x%10;
        else:
            res=res*10-(-x)%10;
        x=int(x/10);
        
    print(res);
    
  • 相关阅读:
    Gitcafe绑定自定义域名
    如何优雅地使用Sublime Text
    使用Hexo搭建专属Blog
    How to Use Android ADB Command Line Tool
    雷军北大15分钟演讲:我至少有胆量去想(转)
    浅谈android中的目录结构
    react里 MD5加密
    git忽略相应文件夹,不上传
    antd-mobile的按需加载
    当react 项目使用px2rem
  • 原文地址:https://www.cnblogs.com/Potrem/p/LuoguP1307.html
Copyright © 2020-2023  润新知