3331=数据结构实验之链表八:Farey序列

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 struct node
 4 {
 5     int date1,date2;
 6     struct node*next;
 7 } node;
 8 int main()
 9 {
10     struct node*p,*head,*end,*q;
11     head=(struct node*)malloc(sizeof(struct node));
12     head->next=NULL;
13     end=head;
14     int n,i;
15     scanf("%d",&n);
16     p=(struct node*)malloc(sizeof(struct node));
17     p->next=NULL;
18     q=(struct node*)malloc(sizeof(struct node));
19     q->next=NULL;
20     head->next=p;
21     p->next=q;
22     q->next=NULL;
23     p->date1=0;
24     p->date2=1;
25     q->date1=1;
26     q->date2=1;
27     for(i=1; i<=n; i++)
28     {
29         end=head->next;
30         while(end->next!=NULL)
31         {
32             p=end->next;
33             if((p->date2+end->date2)<=i)
34             {
35                 q=(struct node*)malloc(sizeof(struct node));
36                 q->date1=end->date1+p->date1;
37                 q->date2=end->date2+p->date2;
38                 q->next=NULL;
39                 end->next=q;
40                 q->next=p;
41                 end=end->next->next;
42             }
43             else
44             {
45                 end=end->next;
46             }
47         }
48     }
49
50     p=head->next;
51     int mark=0;
52     for(; p!=NULL; p=p->next)
53     {
54         if(mark!=0)printf("\t");
55         mark++;
56         printf("%d/%d",p->date1,p->date2);
57         if(mark==10)printf("\n"),mark=0;
58
59     }
60     return 0;
61 }

原文地址:https://www.cnblogs.com/Angfe/p/11638484.html

时间: 2024-08-30 18:29:42

3331=数据结构实验之链表八:Farey序列的相关文章

数据结构实验之链表四:有序链表的归并

数据结构实验之链表四:有序链表的归并 Time Limit: 1000MS Memory limit: 65536K 题目描述 分别输入两个有序的整数序列(分别包含M和N个数据),建立两个有序的单链表,将这两个有序单链表合并成为一个大的有序单链表,并依次输出合并后的单链表数据. 输入 第一行输入M与N的值: 第二行依次输入M个有序的整数: 第三行依次输入N个有序的整数. 输出 输出合并后的单链表所包含的M+N个有序的整数. 示例输入 6 5 1 23 26 45 66 99 14 21 28 5

数据结构实验之链表五:单链表的拆分

数据结构实验之链表五:单链表的拆分 Time Limit: 1000MS Memory limit: 65536K 题目描述 输入N个整数顺序建立一个单链表,将该单链表拆分成两个子链表,第一个子链表存放了所有的偶数,第二个子链表存放了所有的奇数.两个子链表中数据的相对次序与原链表一致. 输入 第一行输入整数N;: 第二行依次输入N个整数. 输出 第一行分别输出偶数链表与奇数链表的元素个数: 第二行依次输出偶数子链表的所有数据: 第三行依次输出奇数子链表的所有数据. 示例输入 10 1 3 22

数据结构实验之链表三:链表的逆置

数据结构实验之链表三:链表的逆置 Time Limit: 1000MS Memory limit: 65536K 题目描述 输入多个整数,以-1作为结束标志,顺序建立一个带头结点的单链表,之后对该单链表的数据进行逆置,并输出逆置后的单链表数据. 输入 输入多个整数,以-1作为结束标志. 输出 输出逆置后的单链表数据. 示例输入 12 56 4 6 55 15 33 62 -1 示例输出 62 33 15 55 6 4 56 12 提示 不得使用数组. 来源 示例程序 /*************

SDUT 3364 数据结构实验之图论八:欧拉回路

数据结构实验之图论八:欧拉回路 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 在哥尼斯堡的一个公园里,有七座桥将普雷格尔河中两个岛及岛与河岸连接起来. 能否走过这样的七座桥,并且每桥只走一次?瑞士数学家欧拉最终解决了这个问题并由此创立了拓扑学.欧拉通过对七桥问题的研究,不仅圆满地回答了哥尼斯堡七桥问题,并证明了更为广泛的有关一笔画的三条结论,人们通常称之为欧拉定理.对于一个连通图,通常把

数据结构实验之排序八:快速排序

数据结构实验之排序八:快速排序 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 给定N(N≤10^5)个整数,要求用快速排序对数据进行升序排列,注意不得使用STL. Input 连续输入多组数据,每组输入数据第一行给出正整数N(≤10^5),随后给出N个整数,数字间以空格分隔. Output 输出排序后的结果,数字间以一个空格间隔,行末不得有多余空格. Example Input 8 49

数据结构实验之链表二:逆序建立链表

数据结构实验之链表二:逆序建立链表 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 输入整数个数N,再输入N个整数,按照这些整数输入的相反顺序建立单链表,并依次遍历输出单链表的数据. Input 第一行输入整数N;:第二行依次输入N个整数,逆序建立单链表. Output 依次输出单链表所存放的数据. Sample Input 10 11 3 5 27 9 12 43 16 84 22 Sample Output 22

数据结构实验2——链表

1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <cmath> 5 #include <algorithm> 6 #include <windows.h> 7 #include <cwchar> 8 #include <string> 9 10 using namespace std; 11 12 #define

数据结构实验之链表六:有序链表的建立

Time Limit: 1000MS Memory limit: 65536K 题目描述 输入N个无序的整数,建立一个有序链表,链表中的结点按照数值非降序排列,输出该有序链表. 输入 第一行输入整数个数N: 第二行输入N个无序的整数. 输出 依次输出有序链表的结点值. 示例输入 6 33 6 22 9 44 5 示例输出 5 6 9 22 33 44 提示 不得使用数组! 来源 示例程序 #include <stdio.h> #include <string.h> #include

2116=数据结构实验之链表一:顺序建立链表

1 #include <stdio.h> 2 #include <stdlib.h> 3 struct node 4 { 5 int data; 6 struct node*next; 7 }; 8 int main() 9 { 10 int n,i; 11 struct node*head,*end,*p; 12 head=(struct node*)malloc(sizeof(struct node));//为head在这个链表中开辟一个空间. 13 head->next