#include<stdio.h>
#include<stdlib.h>
int SIZE,LEN=0;
int * InsertAfterMatchedValue(int *a,int x,int y)
{
for(int i=0; i<LEN; i++)
{
if(a[i]==x)
{
for(int j=LEN-1; j>=i; j--)a[j+1]=a[j];
a[i+1]=y;
LEN++;
i++;
}
if(LEN>SIZE){
SIZE*=2;
a
=(int*)realloc(a
,SIZE
*sizeof(int)); printf("array size doubled\n"); }
} return a;
}
void printDynamicArray(int a[])
{
for(int i=0; i<LEN; i++)
{
}
}
int main()
{
SIZE=9;
int* a
= (int*)malloc(sizeof(int)*SIZE
); a[0]=3;
a[1]=2;
a[2]=2;
a[3]=3;
a[4]=2;
a[5]=1;
a[6]=3;
a[7]=3;
a[8]=3; ///{3,2,2,3,2,1,3,3,3}
LEN=SIZE;
int Val1,Val2;
scanf("%d%d",&Val1
,&Val2
); a=InsertAfterMatchedValue(a,Val1,Val2);
printDynamicArray(a);
}
I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8c3RkbGliLmg+CgppbnQgU0laRSxMRU49MDsKCmludCAqIEluc2VydEFmdGVyTWF0Y2hlZFZhbHVlKGludCAqYSxpbnQgeCxpbnQgeSkKewogICAgZm9yKGludCBpPTA7IGk8TEVOOyBpKyspCiAgICB7CiAgICAgICAgaWYoYVtpXT09eCkKICAgICAgICB7CiAgICAgICAgICAgIGZvcihpbnQgaj1MRU4tMTsgaj49aTsgai0tKWFbaisxXT1hW2pdOwogICAgICAgICAgICBhW2krMV09eTsKICAgICAgICAgICAgTEVOKys7CiAgICAgICAgICAgIGkrKzsKCiAgICAgICAgfQogICAgICAgICBpZihMRU4+U0laRSl7CiAgICAgICAgICAgICAgICBTSVpFKj0yOwogICAgICAgICAgICAgICAgYT0oaW50KilyZWFsbG9jKGEsU0laRSpzaXplb2YoaW50KSk7CiAgICAgICAgICAgICAgICBwcmludGYoImFycmF5IHNpemUgZG91YmxlZFxuIik7CiAgICAgICAgICAgIH0KICAgIH0gcmV0dXJuIGE7Cn0KCnZvaWQgcHJpbnREeW5hbWljQXJyYXkoaW50IGFbXSkKewogICAgZm9yKGludCBpPTA7IGk8TEVOOyBpKyspCiAgICB7CiAgICAgICAgcHJpbnRmKCIlZCAiLGFbaV0pOwogICAgfQp9CgppbnQgbWFpbigpCnsKICAgIFNJWkU9OTsKICAgIGludCogYSA9IChpbnQqKW1hbGxvYyhzaXplb2YoaW50KSpTSVpFKTsKICAgIGFbMF09MzsKICAgIGFbMV09MjsKICAgIGFbMl09MjsKICAgIGFbM109MzsKICAgIGFbNF09MjsKICAgIGFbNV09MTsKICAgIGFbNl09MzsKICAgIGFbN109MzsKICAgIGFbOF09MzsgLy8vezMsMiwyLDMsMiwxLDMsMywzfQogICAgTEVOPVNJWkU7CgogICAgaW50IFZhbDEsVmFsMjsKICAgIHNjYW5mKCIlZCVkIiwmVmFsMSwmVmFsMik7CiAgICBhPUluc2VydEFmdGVyTWF0Y2hlZFZhbHVlKGEsVmFsMSxWYWwyKTsKCiAgICBwcmludER5bmFtaWNBcnJheShhKTsKfQoKCgo=