金牌银牌铜牌

news/2024/12/1 0:23:37/

花了三个小时写成的代码。。。。呼。。。累死了。。。

  1 #include<stdio.h>
  2 #include<string.h>
  3 #include<stdlib.h>
  4 typedef struct Node
  5 {
  6     char s[10];
  7     int data;
  8     struct Node *next;
  9 } node;
 10 struct lode
 11 {
 12     char s[10];
 13     int data;
 14 };
 15 node *head;
 16 
 17 void inter(char e[],int h)
 18 {
 19     node *t,*p,*p1;
 20     t=(node *)malloc(sizeof(node));
 21     strcpy(t->s,e);
 22     t->data=h;
 23     p1=head;
 24     p=head->next;
 25     while(!(p1->next==NULL||t->data>p->data))
 26     {
 27         p1=p1->next;
 28         p=p->next;
 29     }
 30     t->next=p;
 31     p1->next=t;
 32 }
 33 void add(node *head)
 34 {
 35     node *p1,*p,*t,*q;
 36     int k;
 37     t=(node *)malloc(sizeof(node));
 38     scanf("%s %d%*c",t->s,&k);
 39     p1=head;
 40     p=head->next;
 41     while(!(p1->next==NULL||strcmp(t->s,p->s)==0))
 42     {
 43         p1=p1->next;
 44         p=p->next;
 45     }
 46     q=p;
 47     inter(q->s,q->data+k);
 48     p1->next=q->next;
 49     free(q);
 50 }
 51 void out(node *head)
 52 {
 53     node *q,*p;
 54     p=(node *)malloc(sizeof(node));
 55     scanf("%s%*c",p->s);
 56     q=head;
 57     while(q->next!=NULL)
 58     {
 59         if(strcmp(q->next->s,p->s)==0)
 60         {
 61             q->next=q->next->next;
 62         }
 63         else
 64             q=q->next;
 65     }
 66 }
 67 void outall(node *head)
 68 {
 69     node *p;
 70     p=head->next;
 71     while(p!=NULL)
 72     {
 73         printf("%s %d\n",p->s,p->data);
 74         p=p->next;
 75     }
 76 }
 77 void list(node *head)
 78 {
 79     node *q;
 80     struct lode a[10000];
 81     int i;
 82     q=head->next;
 83     i=0;
 84     while(q!=NULL)
 85     {
 86         strcpy(a[i].s,q->s);
 87         a[i].data=q->data;
 88         i++;
 89         q=q->next;
 90     }
 91     int j=0,k,ss;
 92     printf("#1 :");
 93     k=j;
 94     printf(" %s",a[j++].s);
 95     while(a[j].data==a[k].data)
 96     {
 97         printf(" %s",a[j].s);
 98         j++;
 99     }
100     printf("\n#2 :");
101     for(ss=2; ss>0&&j<i; ss--)
102     {
103         k=j;
104         printf(" %s",a[j++].s);
105         while(a[j].data==a[k].data)
106         {
107             printf(" %s",a[j++].s);
108         }
109     }
110     printf("\n#3 :");
111     for(ss=3; ss>0&&j<i; ss--)
112     {
113         k=j;
114         printf(" %s",a[j++].s);
115         while(a[j].data==a[k].data)
116         {
117             printf(" %s",a[j++].s);
118         }
119     }
120 }
121 int main()
122 {
123     node *p,*t,*p1;
124     char e[100];
125     int h;
126     head=(node *)malloc(sizeof(node));
127     head->next=NULL;
128     int n;
129     char k;
130     scanf("%d%*c",&n);
131     while(n--)
132     {
133         t=(node *)malloc(sizeof(node));
134         scanf("%s %d%*c",t->s,&t->data);
135         t->next=NULL;
136         p1=head;
137         p=head->next;
138         while(!(p1->next==NULL||t->data>p->data))
139         {
140             p1=p1->next;
141             p=p->next;
142         }
143         t->next=p;
144         p1->next=t;
145     }
146     while(scanf("%c%*c",&k)!=EOF)
147     {
148          if(k=='A')
149         {
150             t=(node *)malloc(sizeof(node));
151            scanf("%s %d%*c",e,&h);
152             inter(e,h);
153         }
154         else if(k=='Q')
155         {
156             out(head);
157         }
158         else if(k=='C')
159         {
160             add(head);
161         }
162         else if(k=='S')
163         {
164             outall(head);
165             printf("\n");
166         }
167         else if(k=='O')
168         {
169             list(head);
170             break;
171         }
172     }
173 
174     return 0;
175 }

 

转载于:https://www.cnblogs.com/mafangfang/archive/2013/04/02/2996682.html


http://www.ppmy.cn/news/487479.html

相关文章

怎么看计算机电源型号,电脑电源铭牌怎么看?台式机电源铭牌知识扫盲 拒绝虚标!...

电脑电源相当于人体的心脏&#xff0c;为电脑不间断供电(血液)&#xff0c;电脑才能稳定的运行着。每一款电脑电源都有铭牌&#xff0c;而电源铭牌上会标注各种重要参数。那么电脑电源铭牌怎么看&#xff1f;下面装机之家分享一下台式机电源铭牌知识扫盲&#xff0c;拒绝虚标&a…

ICPC铜牌题目总结

ICPC铜牌题目总结 第46届ICPC亚洲区域赛&#xff08;昆明&#xff09; D: Divisions 题解&#xff1a;我们产生的序列可以是 单调非递减的序列&#xff0c;所以我们只需要凑出其中的非递增序列的数量即可&#xff0c;长度为n的相同序列&#xff0c;可以产生2n-1种可能性&am…

计算机电源分金牌,机·科普贴:电脑电源金、银、铜牌到底是什么意思?

原标题:机科普贴:电脑电源金、银、铜牌到底是什么意思? POWER 玩家在选购电脑时,普遍看重强劲的CPU和显卡以及多大容量的内存和硬盘。很少有人关心电源的选择。但作为电脑能源的供给中心,电源始终是最容易被人忽略的一个点。好的电源不仅可以让电脑运行更为稳定,同时寿命…

journal log:journald简介

systemd通过起配置文件: /etc/systemd/system.conf 中的选项: #DefaultStandardOutput=journal 来控制所有service的默认输出的位置,可选项有: inherit, null, tty, journal, journal+console, kmsg, kmsg+console, file:path, append:path, truncate:path, socket or …

python入门学习之计算机基础常识

一、计算机知识相关 1、计算机是什么&#xff1f; 计算机就是一个用来计算的机器&#xff01;目前来讲&#xff0c;计算机只能根据人类的指令来完成各种操作&#xff0c;人让它干嘛他就得干嘛所以我们学习计算机&#xff0c;就是学习如何控制计算机&#xff01;2、计算机的组…

含多类型充电桩的电动汽车充电站优化配置方法(matlab代码)

目录 1 主要内容 目标函数 约束条件 程序亮点 2 部分代码 3 程序结果 4 下载链接 1 主要内容 该程序复现博士文章《互动环境下分布式电源与电动汽车充电站的优化配置方法研究》第三章《含多类型充电桩的电动汽车充电站优化配置方法》&#xff0c;本章选择3种典型的电动汽…

python(1):第一章

第1章 学习笔记 计算机是什么 在现实生活中&#xff0c;越来越无法离开计算机了电脑、笔记本、手机、游戏机、汽车导航、智能电视 。。。 计算机就是一个用来计算的机器&#xff01; 目前来讲&#xff0c;计算机只能根据人类的指令来完成各种操作&#xff0c;人让它干嘛他就得…

day01

第一章 计算机基础知识 计算机是什么 在现实生活中&#xff0c;越来越无法离开计算机了电脑、笔记本、手机、游戏机、汽车导航、智能电视 。。。 计算机就是一个用来计算的机器&#xff01; 目前来讲&#xff0c;计算机只能根据人类的指令来完成各种操作&#xff0c;人让它干…