文章

18

粉丝

0

获赞

96

访问

5.5k

头像
击鼓传花 题解:链表模拟
P1018 贵州大学机试题
发布于2025年3月11日 23:38
阅读数 243

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

typedef struct Node{
	int data;
	struct Node* next;
}Node;

int main(){
	Node* p;
	Node head;
	head.data=-1;
	head.next=NULL;
	p=&head;
	int n;
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		p->next=(Node*)malloc(sizeof(Node));
		p=p->next;
		p->data=i;
		p->next=NULL;
	}
	p->next=head.next;
	Node* r=p->next;
	int last=-1;
	while(1){
		if(p->next==p) {
			last=p->data;
			break;
		}
		for(int i=0;i<2;i++){
			p=p->next;
		}
		p->next=p->next->next;
	}
	printf("%d",last);
} 

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发