#include <stdio.h>
#include <stdlib.h>
typedef struct node {
int data;
struct node *next;
} node;
node *newNode(int data) {
node
*new_node
= (node
*) malloc(sizeof(node
)); new_node->data = data;
new_node->next = NULL;;
return new_node;
}
node *insert_node(node *root, int data) {
if (root == NULL)
return newNode(data);
else {
node *cur;
cur = insert_node(root->next, data);
root->next = cur;
}
return root;
}
void print(node *np) {
if (np) {
print(np->next);
}
}
int main() {
int T = 100;
node *root = NULL;
while (T-- > 0) {
root = insert_node(root, r);
}
print(root);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCnR5cGVkZWYgc3RydWN0IG5vZGUgewogICAgaW50IGRhdGE7CiAgICBzdHJ1Y3Qgbm9kZSAqbmV4dDsKfSBub2RlOwoKbm9kZSAqbmV3Tm9kZShpbnQgZGF0YSkgewogICAgbm9kZSAqbmV3X25vZGUgPSAobm9kZSAqKSBtYWxsb2Moc2l6ZW9mKG5vZGUpKTsKICAgIG5ld19ub2RlLT5kYXRhID0gZGF0YTsKCiAgICBuZXdfbm9kZS0+bmV4dCA9IE5VTEw7OwogICAgcmV0dXJuIG5ld19ub2RlOwp9Cgpub2RlICppbnNlcnRfbm9kZShub2RlICpyb290LCBpbnQgZGF0YSkgewogICAgaWYgKHJvb3QgPT0gTlVMTCkKICAgICAgICByZXR1cm4gbmV3Tm9kZShkYXRhKTsKICAgIGVsc2UgewogICAgICAgIG5vZGUgKmN1cjsKCiAgICAgICAgY3VyID0gaW5zZXJ0X25vZGUocm9vdC0+bmV4dCwgZGF0YSk7CiAgICAgICAgcm9vdC0+bmV4dCA9IGN1cjsKCiAgICB9CiAgICByZXR1cm4gcm9vdDsKfQoKdm9pZCBwcmludChub2RlICpucCkgewogICAgaWYgKG5wKSB7CiAgICAgICAgcHJpbnRmKCIoJWQpIiwgbnAtPmRhdGEpOwogICAgICAgIHByaW50KG5wLT5uZXh0KTsKICAgIH0KfQoKaW50IG1haW4oKSB7CiAgICBpbnQgVCA9IDEwMDsKICAgIG5vZGUgKnJvb3QgPSBOVUxMOwogICAgd2hpbGUgKFQtLSA+IDApIHsKICAgICAgICBpbnQgciA9IHJhbmQoKSAlIDIwMDsKICAgICAgICByb290ID0gaW5zZXJ0X25vZGUocm9vdCwgcik7CiAgICB9CiAgICBwcmludChyb290KTsKICAgIHByaW50ZigiXG4iKTsKICAgIHJldHVybiAwOwp9