#include <stdio.h>
#include <stdlib.h>
struct sdp{
int num;
struct sdp *ps;
struct sdp *pd;
};
struct sdp* fcl(int ns);
int main(void) {
// your code goes here
return 0;
}
struct sdp* fcl(int ns){
struct sdp *ps1,*ps2;
ps1
=(struct sdp
*)malloc(sizeof(struct sdp
));
ps1->num=ns;
ps1->pd=NULL;
while(ns>1){
ns--;
ps2
=(struct sdp
*)malloc(sizeof(struct sdp
));
ps1->ps=ps2;
ps2->pd=ps1;
ps1=ps2;
}
ps1->ps=NULL;
return ps1;
}
void fs(struct sdp *pst){
while(pst!=NULL){
pst=pst->pd;
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCgpzdHJ1Y3Qgc2RwewoJCglpbnQgbnVtOwoJCglzdHJ1Y3Qgc2RwICpwczsKCXN0cnVjdCBzZHAgKnBkOwoJCgkKfTsKCnN0cnVjdCBzZHAqIGZjbChpbnQgbnMpOwoKCgppbnQgbWFpbih2b2lkKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglyZXR1cm4gMDsKfQoKCgpzdHJ1Y3Qgc2RwKiBmY2woaW50IG5zKXsKCQoJc3RydWN0IHNkcCAqcHMxLCpwczI7CgkKCXBzMT0oc3RydWN0IHNkcCopbWFsbG9jKHNpemVvZihzdHJ1Y3Qgc2RwKSk7CgkKCXBzMS0+bnVtPW5zOwoJCglwczEtPnBkPU5VTEw7CgkKCXdoaWxlKG5zPjEpewoJCQoJCW5zLS07CgkJCgkJcHMyPShzdHJ1Y3Qgc2RwKiltYWxsb2Moc2l6ZW9mKHN0cnVjdCBzZHApKTsKCQkKCQlwczEtPnBzPXBzMjsKCQkKCQlwczItPnBkPXBzMTsKCQkKCQlwczE9cHMyOwoJCQoJfQoJCglwczEtPnBzPU5VTEw7CgkKCXJldHVybiBwczE7CgkKfSAKCgp2b2lkIGZzKHN0cnVjdCBzZHAgKnBzdCl7CgkKCQoJd2hpbGUocHN0IT1OVUxMKXsKCQkKCQlwcmludGYoIiVkXG4iLHBzdC0+bnVtKTsKCQlwcmludGYoIiVkXG4iLHBzdC0+cHMpOwoJCXByaW50ZigiJWRcbiIscHN0LT5wZCk7CgkJcHJpbnRmKCIlZFxuIixwc3QpOwoJCQoJCXBzdD1wc3QtPnBkOwoJCQoJfQoJCgkKCQp9Cgo=