#include<stdio.h>
int find(int* arr,int* n,int value) {
int index = *n;
for(int i = 0;i < *n ;i++) {
//Tim den khi thay phan tu lon hon so can chen thi dung
if(arr[i] >= value) {
index = i;
break;
}
}
//Tra ve vi tri can chen
return index;
}
void insert(int* arr,int* n,int idx,int value) {
//Tang n len 1 vi them moi 1 phan tu
*n += 1;
//Chen tu phan tu thu n ve toi vi tri index+1
for(int i = *n ; i >= idx+1 ; i--) {
arr[i] = arr[i-1];
}
//Tai index thi chen gia tri can tim
arr[idx] = value;
}
int main() {
int n;
//Nhap so can dien
int a[n];
//Nhap mang co n phan tu
for(int i = 0;i < n ; i++) {
}
printf("Nhap so can chen :\n"); int value;
int x = find(a,&n,value);
insert(a,&n,x,value);
for(int i = 0;i < n ; i++) {
}
}
I2luY2x1ZGU8c3RkaW8uaD4KCmludCBmaW5kKGludCogYXJyLGludCogbixpbnQgdmFsdWUpIHsKICAgIGludCBpbmRleCA9ICpuOwogICAgZm9yKGludCBpID0gMDtpIDwgKm4gO2krKykgewogICAgLy9UaW0gZGVuIGtoaSB0aGF5IHBoYW4gdHUgbG9uIGhvbiBzbyBjYW4gY2hlbiB0aGkgZHVuZwogICAgICAgIGlmKGFycltpXSA+PSB2YWx1ZSkgewogICAgICAgICAgICBpbmRleCA9IGk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KICAgIC8vVHJhIHZlIHZpIHRyaSBjYW4gY2hlbgogICAgcmV0dXJuIGluZGV4Owp9Cgp2b2lkIGluc2VydChpbnQqIGFycixpbnQqIG4saW50IGlkeCxpbnQgdmFsdWUpIHsKCS8vVGFuZyBuIGxlbiAxIHZpIHRoZW0gbW9pIDEgcGhhbiB0dQogICAgKm4gKz0gMTsKICAgIC8vQ2hlbiB0dSBwaGFuIHR1IHRodSBuIHZlIHRvaSB2aSB0cmkgaW5kZXgrMQogICAgZm9yKGludCBpID0gKm4gOyBpID49IGlkeCsxIDsgaS0tKSB7CiAgICAgICAgYXJyW2ldID0gYXJyW2ktMV07CiAgICB9CiAgICAvL1RhaSBpbmRleCB0aGkgY2hlbiBnaWEgdHJpIGNhbiB0aW0KICAgIGFycltpZHhdID0gdmFsdWU7Cn0KCmludCBtYWluKCkgewogICAgaW50IG47CiAgICAvL05oYXAgc28gY2FuIGRpZW4KICAgIHNjYW5mKCIlZCIsICZuKTsKICAgIGludCBhW25dOwogICAgLy9OaGFwIG1hbmcgY28gbiBwaGFuIHR1CiAgICBmb3IoaW50IGkgPSAwO2kgPCBuIDsgaSsrKSB7CiAgICAgICAgc2NhbmYoIiVkIiwgJmFbaV0pOwogICAgfQogICAgcHJpbnRmKCJOaGFwIHNvIGNhbiBjaGVuIDpcbiIpOwogICAgaW50IHZhbHVlOwogICAgc2NhbmYoIiVkIiwmdmFsdWUpOwogICAgaW50IHggPSBmaW5kKGEsJm4sdmFsdWUpOwogICAgaW5zZXJ0KGEsJm4seCx2YWx1ZSk7CiAgICBmb3IoaW50IGkgPSAwO2kgPCBuIDsgaSsrKSB7CiAgICAgICAgcHJpbnRmKCIlZCAiLGFbaV0pOwogICAgfQp9Cg==