解题思路:通过建立二维数组记录每个骰子已经出现过的点数,出现该点数,则将该骰子的点数设为1,然后逆序遍历数组即可找到还未出现过的点数且点数最大的
#include<bits/stdc++.h>
using namespace std;
int main(){
int a[7][7]={0};
int num;
for(int i=1;i<7;i++){
cin>>num;
a[i][num]=1;
}
int n;
cin>>n;
for(int k=1;k<=n;k++){
for(int i=1;i<7;i++){
for(int j=6;j>=1;j--){
if(k<n&&a[i][j]!=1){
a[i][j]=1;
break;
}
if(k==n&&a[i][j]!=1){
if(i<6)
cout<<j<<" ";
else
cout<<j;
break;
}
}
}
}
}