• 程序设计入门——C语言 第3周编程练习 2 数字特征值(5分)


    2

    数字特征值(5分)

    题目内容:

    对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值。对于一个整数,从个位开始对每一位数字编号,个位是1号,十位是2号,以此类推。这个整数在第n位上的数字记作x,如果x和n的奇偶性相同,则记下一个1,否则记下一个0。按照整数的顺序把对应位的表示奇偶性的0和1都记录下来,就形成了一个二进制数字。比如,对于342315,这个二进制数字就是001101。

     

    这里的计算可以用下面的表格来表示:

     

    数字

    3

    4

    2

    3

    1

    5

    数位

    6

    5

    4

    3

    2

    1

    数字奇偶

    数位奇偶

    奇偶一致

    0

    0

    1

    1

    0

    1

    二进制位值

    32

    16

    8

    4

    2

    1

     

    你的程序要读入一个非负整数,整数的范围是[0,1000000],然后按照上述算法计算出表示奇偶性的那个二进制数字,输出它对应的十进制值。

     

    提示:将整数从右向左分解,数位每次加1,而二进制值每次乘2。

     

    输入格式:

    一个非负整数,整数的范围是[0,1000000]。

     

    输出格式:

    一个整数,表示计算结果。

     

    输入样例:

    342315

     

    输出样例:

    13

    时间限制:500ms内存限制:32000kb

    //
    //  main.c
    //  c yuyan
    //
    //  Created by anzhongyin on 2016/11/29.
    //  Copyright © 2016年 anzhongyin. All rights reserved.
    //
    
    #include <stdio.h>
    
    int main(int argc, const char * argv[]) {
        // insert code here...
        int inter;
        int n=1;
        int sum=0;
        int m=1;
        scanf("%d",&inter);
        while(inter>0)
        {
            m=1;
           if((inter%10%2==0&&n%2==0)||(inter%10%2!=0&&n%2!=0))
           {
               for(int i=1;i<n;i++)
               {
                   m=m*2;
               }
                sum=sum+m;
           }
            inter=inter/10;
            n++;
        }
        
        printf("%d
    ",sum);
        return 0;
    }
    

      

    用例测试结果

    运行时间

    占用内存

    提示

    得分

    用例1通过

    1ms

    256kb

     

    1

    用例2通过

    13ms

    256kb

     

    1

    用例3通过

    1ms

    256kb

     

    1

    用例4通过

    1ms

    128kb

     

    1

    用例5通过

    1ms

    148kb

     

    1

    提交答案

     

    本次得分/总分:5.00/5.00分

  • 相关阅读:
    golang压力测试工具
    Gnome启动
    简单说说 Apipost 的几点使用体验
    发现一个很nice的API调试工具!
    马勒第一交响曲
    Python中使用tkinter创建透明图层、不规则组件、插入GIF动图等功能实现
    RESTful API Knife4j
    汇编语言与DOSBOX使用
    VPP初学笔记(一)
    Python3下如何对文件进行操作?
  • 原文地址:https://www.cnblogs.com/bcd589/p/6112064.html
Copyright © 2020-2023  润新知