zkw • 2年前
求解(给我答案的最帅(美))
评论:
using namespace std; int m,n; list l; int main(){ scanf("%d%d",&m,&n); int cnt1=m,cnt2=1;//cnt2表示计n数 bool p[101]; memset(p,false,sizeof(p)); int i=0;//i表示指针 while(cnt1){ if(i==m) i=0; if(p[i]==true){ i++; continue; } if(cnt2==n){ cnt2=1; p[i]=true; cnt1--; printf("%d\n",i+1); i++;
} else{ i++; cnt2++; } } return 0; }
int main()
{
int a[i];
int m;
scanf("%d",&a[i]);
scanf("%d",&m);
for(s=1;s<=m;s++)
{
if(s=i){
printf("%d\n",s);
}
}
return 0;
}
using namespace std; typedef struct LNode {
int data;
LNode *next;
} List,*LinkList;
void Create_List(LinkList &L,int m) {
L=new List;
LinkList o=L;
L->next=NULL;
for(int i=1; i<=m; i++) {
LinkList p=new List;
p->data=i;
p->next=o->next;
o->next=p;
p->next=L->next;
o=p;
}
}
void Print_List(LinkList &L,int n) {
LinkList lst=L;
while(lst->next!=NULL) {
for(int i=0; i<n; i++) {
if(i==n-1) {
lst=lst;
} else {
lst=lst->next;
}
}
cout<<lst->next->data<<endl;
if(lst->next==lst->next->next) {
break;
}
LinkList del;
del=lst->next;
lst->next=del->next;
delete del;
}
}
void Print1_List(LinkList &L,int m) {
LinkList p=L;
for(int i=0; i<m; i++) {
p=p->next;
cout<<p->data<<endl;
}
} int main() {
int m,n;
cin>>m>>n;
LinkList L;
Create_List(L,m);
if(n==1) {
Print1_List(L,m);
} else {
Print_List(L,n);
}
return 0;
}
请先登录,才能进行评论