网易互娱9.27初级游戏研发工程师笔试题
好吧,总共三题,只会第一题。。。有没有大佬给个二三题啊
#include<iostream>
#include<vector>
using namespace std;
vector<int> numToVec( int num)
{
vector<int> vec;
while (num > 0)
{
vec.push_back(num % 10);
num = num / 10;
}
return vec;
}
int main()
{
int n;
cin >> n;
const int num = 10;
vector<int> res(num);
while (n-->0)
{
int a, b;
cin >> a >> b;
vector<int> arr(num);
int tmp = b;
bool isa = true;
bool isb = true;
bool isab = true;
while (tmp > 0)
{
int res = 0;
if (isa)
{
res = a;
isa = false;
}
else if (isb)
{
res = b;
isb = false;
}
else if (isab)
{
res = a * tmp;
isab = false;
}
else
{
res = a * (tmp % 10);
tmp = tmp / 10;
}
vector<int> vec=numToVec(res);
for (int i = 0; i < vec.size(); i++)
arr[vec[i]]++;
}
for (int i = 1; i < num; i++)
{
cout << arr[i] << " ";
res[i] += arr[i];
}
cout << endl;
}
int maxNum = res[1];
int luck = 1;
for (int i = 1; i < num; i++)
{
if (res[i] > maxNum)
{
maxNum = res[i];
luck = i;
}
}
cout << luck << endl;
//system("pause");
return 0;
}
#网易互娱##笔试题目##题解##游戏工程师##include<vector>
using namespace std;
vector<int> numToVec( int num)
{
vector<int> vec;
while (num > 0)
{
vec.push_back(num % 10);
num = num / 10;
}
return vec;
}
int main()
{
int n;
cin >> n;
const int num = 10;
vector<int> res(num);
while (n-->0)
{
int a, b;
cin >> a >> b;
vector<int> arr(num);
int tmp = b;
bool isa = true;
bool isb = true;
bool isab = true;
while (tmp > 0)
{
int res = 0;
if (isa)
{
res = a;
isa = false;
}
else if (isb)
{
res = b;
isb = false;
}
else if (isab)
{
res = a * tmp;
isab = false;
}
else
{
res = a * (tmp % 10);
tmp = tmp / 10;
}
vector<int> vec=numToVec(res);
for (int i = 0; i < vec.size(); i++)
arr[vec[i]]++;
}
for (int i = 1; i < num; i++)
{
cout << arr[i] << " ";
res[i] += arr[i];
}
cout << endl;
}
int maxNum = res[1];
int luck = 1;
for (int i = 1; i < num; i++)
{
if (res[i] > maxNum)
{
maxNum = res[i];
luck = i;
}
}
cout << luck << endl;
//system("pause");
return 0;
}