#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct Node{
    int rollNumber;
    struct Node* next;
};
void add(struct Node** head, int rollNumber){
    struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));
    if(newNode == NULL){
        printf("Memory allocation failed.\n");
        exit(1);
    }
    newNode->rollNumber = rollNumber;
    newNode->next = NULL;
    if(*head == NULL){
        *head = newNode;
        return;
    }
    struct Node* temp = *head;
    while(temp->next != NULL){
        temp = temp->next;
    }
    temp->next = newNode;
}
void printlist(struct Node* head){
    if(head == NULL){
        printf(" ");
        return;
    }
    struct Node* temp = head;
    while(temp != NULL){
        printf("%d",temp->rollNumber);
        temp = temp->next;
    }
    printf("\n");
}
void deleteNode(struct Node ** head, int rollTodelete){
    struct Node *temp=*head,*prev = NULL;
    if(temp != NULL && temp->rollNumber == rollTodelete){
        *head=temp->next;
        free(temp);
        return;
    }
}