paypel 2019-3-30 软件工程师 笔试题目

paypel 第一题
一圈人 围着 报数
输入5 2  输出5
// 本题为考试单行多行输入输出规范示例,无需提交,不计分。
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int a,b;
int i,j;
cin >> a >> b;// 注意,如果输入是多个测试用例,请通过while循环处理多个测试用例
int annay[a];
for(i = 0;i<a;i++){
annay[i] = 1;
}
i = 0;
int k = 1;
for(j=b;j<=pow(b,(a-1));j = pow(b,k)){
k++;
while(j>0){
if(annay[i] == 1){
i++;
j--;
i = i%a;
}
else{
i++;
i = i%a;
}
}
annay[(i-1)%a] = 0;
}
for(i = 0;i<a;i++){
if(annay[i] == 1){
cout<<(i+1);
}
}
}






第2-2题
整理书架
输入
4
8
0 1 2 3 4 5 6 7
11 6 5 7 3 2 2 0
2 3 6 1 9 3 5 4
0 2 4 5 3 10 6 7
输出
[[0,1,2,3,4,5,6,7],[0,2,4,5,3,10,6,7],[2,3,6,1,9,3,5,4],[11,6,5,7,3,2,2,0]]


// 本题为考试单行多行输入输出规范示例,无需提交,不计分。
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int a,b;
int i,j;
cin >> a >> b;// 注意,如果输入是多个测试用例,请通过while循环处理多个测试用例
int annay[a][b];
for(i=0;i<a;i++){
for(j=0;j<b;j++){
cin>>annay[i][j];
}
}
int count[a];
for(i=0;i<a;i++){
count[i] = 0;
for(int s=0;s<b;s++){
for(int k=s;k<b;k++){

if(annay[i][s]>annay[i][k])
count[i]++;
}
}

}
cout<<"[";
for(i=0;i<a;i++){
int min = i;
int s;
for(j=1;j<a;j++){
if(count[j] < count[i]){
min = j;
}
}
cout<<"[";
for(s=0;s<b-1;s++){
cout<<annay[min][s]<<",";
}
cout<<annay[min][s];
cout<<"]";
if(i<a-1)
cout<<",";
//        cout<<a[min]
//        cout<<count[min]<<" ";
count[min] = 10000;

}
cout<<"]";


return 0;
}

#笔试题目##paypal#
全部评论

相关推荐

点赞 5 评论
分享
牛客网
牛客企业服务