被360坑了

40道选择题,推荐完成时间50分钟(感觉是胡乱写的一个时间啊。。。。。),我想只有神级人物才能达到。紧赶慢赶,做了65分钟,中间好多复杂推理的直接蒙过去的,还担心自己后面完不成。结果两道编程题都很简单,做完还剩15分钟,真是醉了。。。。。
全部评论
哥们,能不能贴下编程题代码,2道的
点赞 回复 分享
发布于 2016-09-20 21:04
这编程题好水啊。。。。
点赞 回复 分享
发布于 2016-09-20 21:06
想知道赛马网。编程输入多个,怎么处理。异常很久。
点赞 回复 分享
发布于 2016-09-20 21:06
我觉得这种编程题会要你考虑扩展性,而不单单是AC就行。。。估计AC2道的一大把
点赞 回复 分享
发布于 2016-09-20 21:10
#include <iostream> #include <fstream> #include <sstream> #include <string> #include <vector> #include <deque> #include <queue> #include <list> #include <stack> #include <map> //#include <set> #include <utility> #include <iterator> #include <array> #include <cstdlib> #include <algorithm> #include <numeric> #include <climits> #include <cstring> #include <unordered_map> #include <functional> #include <iomanip> #include <cmath> using namespace std; string addBinary(string a, string b) { if (a.size() < b.size()) { swap(a, b); } int lena = a.size(); int lenb = b.size(); if (lenb == 0) { return a; } string ret; unsigned short c = 0; reverse(a.begin(), a.end()); reverse(b.begin(), b.end()); int i = 0, j = 0; for (; i < lena && j < lenb; ) { char cha = a[i], chb = b[j]; unsigned short sum = cha - '0' + chb - '0' + c; c = sum / 2; ret.push_back(sum % 2 + '0'); ++i, ++j; } int k = i; for (; k < lena; ++k) { unsigned short sum = a[k] - '0' + c; c = sum / 2; ret.push_back(sum % 2 + '0'); } if (c == 1) { ret.push_back('1'); } reverse(ret.begin(), ret.end()); return ret; } int cal(int n){ return pow(2, n - 1); } int main(int argc, char *argv[]) { string a = "111"; string b = "1"; auto ret = addBinary(a,b); freopen("input.txt", "r", stdin); unsigned int n = 0; while (cin >> n) { stringstream sstrm; sstrm << n; string str; sstrm >> str; int sz = str.size(); string ss(sz, '1'); sstrm.str(""); sstrm.clear(); sstrm.str(ss); int num = 0; sstrm >> num; int ret = 0; if (n >= num) { for (int i = 1; i <= sz; ++i) { ret += cal(i); } } else { for (int i = 1; i <= sz - 1; ++i) { ret += cal(i); } string basestr(sz,'0'); basestr[0] = '1'; int tempnum = stoi(basestr); while (tempnum <= n) { ++ret; basestr = addBinary(basestr,"1"); tempnum = stoi(basestr); } } cout << ret << endl; } return 0; } 第一道覆盖了,没存下来
点赞 回复 分享
发布于 2016-09-20 21:17
我有一题是什么内存写入二进制的,哎,一直没找出规律
点赞 回复 分享
发布于 2016-09-21 00:57

相关推荐

10-10 10:44
已编辑
门头沟学院 C++
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务