毎日アルゴリズムを書く兵士の隊列訓練問題
1492 ワード
アドレスクリックでリンクを開く
循環除去が2で整うことができて、3で整除することができて、2で整除することができて、3つの数以内の位置しか残っていないことを知っています:
コード:
循環除去が2で整うことができて、3で整除することができて、2で整除することができて、3つの数以内の位置しか残っていないことを知っています:
コード:
#include
#include
#include
#include
#include
using namespace std ;
#define MAX 105
struct Node{
int num ;
int ranks;
};
queue qe ;
int main(){
int Num,nums,i,j ;
scanf("%d",&Num);
while(Num--)
{
cin >>nums;
if(nums<=3)
{
cout << 1 ;
for(i=2 ; i <=nums; i ++)
{
cout << " "<3)
{
int we= 1 ;
if(index%2==1)
base = 2 ;
else
base = 3 ;
index ++ ;
int qe_size = qe.size();
for(i = 1 ; i <= qe_size ;i++)
{
Node tp = qe.front();
qe.pop();
if(tp.ranks%base!=0)
{
tp.ranks = we++;
qe.push(tp);
}
}
}
printf("%d",qe.front().num);
qe.pop();
for(i=0 ; i <=qe.size(); i++)
{
printf(" %d",qe.front().num);
qe.pop();
}
printf("
");
}
}