#include <stdio.h> #define el printf("\n") void state_init() { printf("Init"); } void state_load() { printf("Load"); } void state_execute() { printf("Execute"); } void state_exit() { printf("Exit"); } // Your logic here void run_state_sequence(int start) { // int reval = 0; void (*ptr[4])() = {state_init, state_load, state_execute, state_exit}; if(start == 0) ptr[0](),el, ptr[1](), el, ptr[2](); if(start == 1) ptr[1](),el, ptr[2](), el, ptr[3](); if(start == 2) ptr[2](),el, ptr[3](), el, ptr[0](); if(start == 3) ptr[3](),el, ptr[0](), el, ptr[1](); } int main() { int start; scanf("%d", &start); run_state_sequence(start); return 0; }
Test Cases
Test Results
Input
0
Expected Output
Init Load Execute