Ограничения: время – 200ms/500ms, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Двусвязный список имеет следующую структуру узла
```c
typedef struct node {
int value;
struct node *next, *prev;
} node;
```
Напишите функцию ``insertafter(корень, узел, значение)``, которая добавляет новый узел с указанным
значением после заданного.
Для вставки нового узла в начало списка в качестве узла указывается NULL, при этом изменяется указатель на корень.
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct node {
int value;
struct node *next, *prev;
} node;
// определение функции insertafter
...
int main()
{ node *root=NULL;
// root->NULL
insertafter(&root,NULL,1);
// root->[1]->NULL
insertafter(&root,NULL,2);
// root->[2]<->[1]->NULL
insertafter(&root,NULL,3);
// root->[3]<->[2]<->[1]->NULL
node *n=root->next;
insertafter(&root,n,4);
// root->[3]<->[2]<->[4]<->[1]->NULL
}
```
В качестве решения необходимо отправлять файл, содержащий только эту функцию!