今天听说cao参加了网易雷火盘古的招聘,做了几道编程题。据他本人的描述,第一道题是这样的:
![]()
第一行输入两个数字N和M,表示现在有N个硬币,需要反转M次。初始所有硬币都默认为正面,用0表示,反面则用1表示。求经过一系列操作之后的硬币正反排列。
根据cao本人的说法,输入输出样例是这样的:
感觉比较简单......毕竟第一题都是让应聘者放松警惕的。
直接上代码如下:
#include <iostream>
#include <memory.h>
using namespace std;
int main()
{
int n, t;
while(cin >> n >> t){
int ind, time;
int coin[n];
memset(coin, 0, n*sizeof(int));
for(int i = 0; i < t; i++){
cin >> ind >> time;
if(ind % 2 != 0){
coin[ind-1] = coin[ind-1]^1;
}
}
for(int j = 0; j < n; j++){
cout << coin[j];
}
}
}
直接判断反转次数是否为奇数,然后和1做异或运算即可。
结果后来cao又发了几题比较难的......