请教下今天的网易编程题,麻烦大神帮忙看看

就是今天魔法币的那道,我觉得偶数一直输出2就可以了,因为每次输入的x只需要小于当前拥有的币,
不行的话输入0也可以得到2,而且题目没有限制比如最短序列什么,所以我觉得这个思路可以啊,
代码如下,没有全部ac,但我觉的思路没问题啊,麻烦高手指正。
#include<iostream>
#include<vector>

using namespace std;

int main() {
	int n;
	cin >> n;
	int m, j;
	m = n / 2;
	j = 0;
	if (n % 2 == 0) {
		while (j<m) {
			j = 2 * j + 2;
			cout << "2";
		}
		if (j == n) return 0;
		else {
			cout << "2";
		}

	}
	else {
		while (j<m) {
			j = 2 * j + 1;
			cout << "1";
		}
		if (j == n) return 0;
		else {
			cout << "1";
		}
	}
	return 0;
}

全部评论
这道题的隐藏要求应该是每次需要投手中有的全部的币
点赞
送花
回复
分享
发布于 2017-09-09 21:15
public static void needpeer(int need) { StringBuffer ss = new StringBuffer(); while(true) { if(need % 2 ==0) { ss.append("2"); need = need /2 -1; }else { ss.append("1"); need = need/2; } if(need == 0) { System.out.println(ss.reverse().toString()); return; } } }
点赞
送花
回复
分享
发布于 2017-09-09 21:16
滴滴
校招火热招聘中
官网直投

相关推荐

投递网易雷火等公司7个岗位
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务