zoukankan      html  css  js  c++  java
  • 转换二进制数(这是一道竞赛形式的题目)。

    1. 题目介绍


    转换二进制数(这是一道竞赛形式的题目)。

    时限:3s输人文件: change.in

      一串串太多太长的二进制数真是枯燥乏味,难怪小明看着看着就看花眼了;小亮看着看着就睡着了;小晶看着看着就恐慌起来了,仿佛自己变成了机器人,原本丰富多彩的世界一下子成了0和1的汪洋大海。他们一致要求将这些二进制数转换成十进制数,只有这样,心里才安稳,才痛快,睡觉才合得上眼.
      这项工作自然就落到你的手里了,因为早就听说你是处理二进制数的高手了,一点也不怀疑你会一下子想出十七八种转换的方法,而且其中还有几种方法还很经典呢,这儿真
    的就是你用武的好地方,请下手吧。
      输入说明
      有3000个二进制数,最长的不过64位,在文件中以数字串的形式存放,每行只放1个数。如果是-1,那就表示输入结束
      输出说明
      每一个二进制数对应一个十进制数输出。每个输出都要换行。
      样板输入
      010000111110111110110110011001011111110011111100000001
      00000000000000001111111110101010010101010010100000001111100
      100001
      样板输出
      184924582623264513
      8784594944124
      33

    2. 代码


     1 #include <iostream>
     2 #include <fstream>
     3 #include <sstream>
     4 
     5 using namespace std;
     6 
     7 int main()
     8 {
     9     fstream fin("abc.txt");   //打开文件流
    10     for(string s;getline(fin,s);){   //每次读取一行到字符串s
    11         __int64 ans =0;
    12         if(s =="-1"){    //判断是不是结尾
    13             break;
    14         }
    15         for(int i=0;i<s.length();i++){
    16             ans =(ans<<1)+s[i]-'0';  //从最高位开始是每次左移1位,相当于乘以2
    17         }
    18         cout<<ans<<endl;
    19     }
    20 }
  • 相关阅读:
    转:谱聚类(spectral clustering)及其实现详解
    转:聚类系列-谱聚类(spectral clustering)
    转: 特征值和特征向量--1
    转:python numpy教程
    转:python各种库
    漫谈聚类--网站
    转:谱聚类
    Django错误: ConnectionResetError: [Errno 54] Connection reset by peer
    Django报错 'X-Frame-Options' to 'deny'.
    Ajax(FormData)实现文件上传
  • 原文地址:https://www.cnblogs.com/Triomphe/p/9385347.html
Copyright © 2011-2022 走看看