原题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=647

思路:没啥说的,本想用java写,没找到double进制转换的对应函数。。就该用c++,本想偷懒下,直接用string,然后找个string转化double的函数,最后还是失败了 用sstream,格式会变。。发现其实最简单的方法就是直接用数组模拟。。一直想偷懒下,结果绕了一个圈。。。

先提供个double型化二进制的模版,这里不考虑格式。。

#include<sstream>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
using namespace std;
string::iterator it;
string Trans(long Integer)
{if(Integer == 0) return "0";string temp="";while(Integer){temp = char(Integer%2+48)+temp;Integer/=2;}return temp;
}
string Trans(double Decimal)
{string temp=".";int n = 20;while(Decimal&&n){Decimal*=2;temp = temp + char(int(Decimal)+48);Decimal = Decimal - int(Decimal);n--;}return temp;
}
int main()
{int i,j;double x;while(cin>>x){long Integer = long(x);double Decimal = x-Integer;double ans;string Ans = Trans(Integer) + Trans(Decimal);cout<<Ans<<endl;}
}

本题AC代码:

#include<sstream>
#include<stdlib.h>
#include<algorithm>
#include<iostream>
using namespace std;
string::iterator it;
string Trans(long Integer)
{if(Integer == 0) return "0";string temp="";while(Integer){temp = char(Integer%2+48)+temp;Integer/=2;}return temp;
}
string Trans(double Decimal)
{string temp=".";int n = 20;while(Decimal&&n){Decimal*=2;temp = temp + char(int(Decimal)+48);Decimal = Decimal - int(Decimal);n--;}return temp;
}
int main()
{int i,j;double x;while(cin>>x){long Integer = long(x);double Decimal = x-Integer;double ans;string Ans = Trans(Integer) + Trans(Decimal);//cout<<Ans<<endl;/*根据题目进行的格式控制、、*/int n = Ans.length();while(--n){it = Ans.end()-1;if(Ans[n] == '0') Ans.erase(it);else if(Ans[n] == '.'){Ans.erase(it);break;}elsebreak;}cout<<Ans<<endl;/*stringstream ss;ss<<Ans;ss>>ans;ss.clear();cout<<ans<<endl;*/}
}

NYOJ 647 奋斗小蜗牛在请客【模拟】相关推荐

  1. NYOJ 647 奋斗的小蜗牛在请客

    奋斗小蜗牛在请客 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 一路艰辛一路收获,成功爬过金字塔的小蜗牛别提多高兴了.这不为了向曾经帮助他的哥们们表达谢意,蜗牛宴请这些 ...

  2. NYOJ 599 奋斗的小蜗牛

    奋斗的小蜗牛 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 传说中能站在金字塔顶的只有两种动物,一种是鹰,一种是蜗牛.一只小蜗牛听了这个传说后,大受鼓舞,立志要爬上金字 ...

  3. NYOJ 453 小珂的烦恼 模拟

    这道题是大一的一次月赛题目,,悲崔的是,我想了好久才想出来,想出来还超时了,,太菜了,太菜了...后来仔细想了想,改了一个地方就过了.. 思路:就是模拟,判断当前没出现过的最小的是哪个数即可.判断第i ...

  4. NYOJ练习题 下三角矩形 (模拟)

    下三角矩阵 时间限制:1000 ms  |  内存限制:65535 KB 描述 给定一个由0和1组成的矩阵.只允许交换相邻的两行,要把矩阵转化成下三角矩阵(主对角线上方的元素都是0),最少需要交换几次 ...

  5. 【NYOJ】[599]奋斗的小蜗牛

    其实最简单的有一种模拟循环的做法 思路也非常简单 而且对这一题也并没有超时 #include<stdio.h> int main() {int T;scanf("%d" ...

  6. 599 奋斗的小蜗牛

    奋斗的小蜗牛 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 传说中能站在金字塔顶的只有两种动物,一种是鹰,一种是蜗牛.一只小蜗牛听了这个传说后,大受鼓舞,立志要爬上金字 ...

  7. 1168 -- 奋斗的小蜗牛

    奋斗的小蜗牛 Time Limit:1000MS  Memory Limit:65536K Total Submit:139 Accepted:89 Description 传说中能站在金字塔顶的只有 ...

  8. 奋斗的小蜗牛 南阳理工ACM 题目599

    题目599 题目信息 运行结果 本题排行 讨论区 奋斗的小蜗牛 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 传说中能站在金字塔顶的只有两种动物,一种是鹰,一种是蜗牛. ...

  9. 奋斗的小蜗牛+竹青遍野 同类题

    描述传说中能站在金字塔顶的只有两种动物,一种是鹰,一种是蜗牛.一只小蜗牛听了这个传说后,大受鼓舞,立志要爬上金字塔. 为了实现自己的梦想,蜗牛找到了老鹰,老鹰告诉它金字塔高H米,小蜗牛知道一个白天自己 ...

最新文章

  1. python学习之if语句
  2. 2008年1月19日 微软(北京).NET俱乐部 线下休闲活动-滑雪
  3. 经典面试题(19):以下代码将输出的结果是什么?
  4. html 苹果桌面浮窗,苹果手机钉钉悬浮窗设置打开的方法
  5. 为GridView-Delete列添加确认对话框(2种方法)
  6. javascript下的数值型比较真的没有那么简单
  7. 7-3 sdut-求两个整数之和(I)
  8. 为什么佛系青蛙住进了阿里淘宝——访《旅行青蛙》制作人
  9. 什么是 “动态规划” , 用两个经典问题举例。
  10. C++ STL 函数partial_sum的正确使用方法
  11. 怎样覆盖之前的html文档,jquery – html文本覆盖自己
  12. python数据分析用什么库_Python数据分析常用的库总结
  13. 超详细!JDK 8 下载、安装和环境配置(macOS 和 Windows 版本)
  14. 关于未知的USB设备(设备描述符请求失败)的解决方法。
  15. 车机没有carlife可以自己下载吗_安卓车机CarPlay模块初体验
  16. 中国传统四大菜系之:鲁菜
  17. VS隐藏菜单插件 Hide Main Menu
  18. py处理网段转化模块
  19. python爬取芒果TV《乘风破浪的姐姐》弹幕数据(已完成)
  20. Z-Wave 700 秘钥生成、固件签名、及OTA过程

热门文章

  1. tiseaa 001-2020 网络安全等级保护测评高风险判定指引
  2. PCIe扫盲——链路初始化与训练基础(三)之LTSSM
  3. 【C#学习笔记】string.Format对C#字符串格式化
  4. HIT-大数据分析Lab1:数据预处理-实验记录
  5. 理财中的基金份额、净值
  6. 第6篇:SELECT查询基础篇
  7. 【多线程-线程状态、优先级、守护线程】
  8. Android第三方QQ登录,实用教程
  9. 【分享】微软面试题及答案 (很需要开放性思维啊)
  10. 【Android 进程保活】应用进程拉活 ( 双进程守护保活 )