#include<stdio.h>
#include<stdlib.h>
/*
void printarr(int a[],int n)
{
for(int i=0;i<n;i++)
{
printf("%d ",a[i]);
}
}
int main()
{
printf("Enter n: ");
int n;
scanf("%d",&n);
printf("List: ");
int a[n];
int cnt_comp=0,cnt_ex=0;
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(int i=1;i<n;i++)
{
int key=a[i];
int j=i-1;
while(j>=0 && a[j]>key)
{
a[j+1]=a[j];
j--;
cnt_comp++;
cnt_ex++;
}
cnt_comp++;
a[j+1]=key;
}
printarr(a,n);
printf("\n");
printf("Number of comparison: %d\n",cnt_comp);
printf("Number of exchange: %d",cnt_ex);
}
*/
/*
void printarr(int a[],int n)
{
for(int i=0;i<n;i++)
{
printf("%d ",a[i]);
}
}
int main()
{
printf("Enter n: ");
int n;
scanf("%d",&n);
printf("List: ");
int a[n];
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(int i=0;i<n;i++)
{
for(int j=1;j<n;j++)
{
if(a[j-1]>a[j])
{
int tmp=a[j-1];
a[j-1]=a[j];
a[j]=tmp;
}
}
}
printarr(a,n);
}
*/
void printarr(int a[],int n)
{
for(int i=0;i<n;i++)
{
}
}
int main()
{
int n;
int a[n];
for(int i=0;i<n;i++)
{
}for(int i=0;i<n;i++)
{
int min=a[i];
int idx=i;
for(int j=1;j<n;j++)
{
if(a[j]<min)
{
min=a[j];
idx=j;
}
}
int tmp=a[i];
a[i]=min;
a[idx]=tmp;
}
for(int i=0;i<n;i++)
{
int min=a[i];
int idx=i;
for(int j=i+1;j<n;j++)
{
if(a[j]<min)
{
min=a[j];
idx=j;
}
}
int tmp=a[i];
a[i]=min;
a[idx]=tmp;
}
int sum=0;
for(int i=0;i<n;i++)
{
sum+=a[i];
}
printf("Mean: %.2f\n",(float)sum
/n
);
if(n
&1) printf("Median: %d",a
[n
/2]); else printf("Median: %.1f",(a
[n
/2]+a
[(n
/2)-1])/2.0);
}
/*
#include <stdio.h>
void insertionSort(int arr[], int n) {
int i, key, j;
for (i = 1; i < n; i++) {
key = arr[i];
j = i - 1;
// Move elements greater than key
// one position ahead
while (j >= 0 && arr[j] > key) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = key;
}
}
void printArray(int arr[], int n) {
for (int i = 0; i < n; i++)
printf("%d ", arr[i]);
printf("\n");
}
int main() {
int arr[] = {12, 11, 13, 5, 6};
int n = sizeof(arr) / sizeof(arr[0]);
printf("Original array: ");
printArray(arr, n);
insertionSort(arr, n);
printf("Sorted array: ");
printArray(arr, n);
return 0;
}
*/
I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8c3RkbGliLmg+Ci8qCnZvaWQgcHJpbnRhcnIoaW50IGFbXSxpbnQgbikKewogICAgZm9yKGludCBpPTA7aTxuO2krKykKICAgIHsKICAgICAgICBwcmludGYoIiVkICIsYVtpXSk7CiAgICB9Cn0KCgppbnQgbWFpbigpCnsKICAgIHByaW50ZigiRW50ZXIgbjogIik7CiAgICBpbnQgbjsKICAgIHNjYW5mKCIlZCIsJm4pOwogICAgcHJpbnRmKCJMaXN0OiAiKTsKICAgIGludCBhW25dOwogICAgaW50IGNudF9jb21wPTAsY250X2V4PTA7CiAgICBmb3IoaW50IGk9MDtpPG47aSsrKQogICAgewogICAgICAgIHNjYW5mKCIlZCIsJmFbaV0pOwogICAgfQoKICAgIGZvcihpbnQgaT0xO2k8bjtpKyspCiAgICB7CiAgICAgICAgaW50IGtleT1hW2ldOwogICAgICAgIGludCBqPWktMTsKICAgICAgICB3aGlsZShqPj0wICYmIGFbal0+a2V5KQogICAgICAgIHsKICAgICAgICAgICAgYVtqKzFdPWFbal07CiAgICAgICAgICAgIGotLTsKICAgICAgICAgICAgY250X2NvbXArKzsKICAgICAgICAgICAgY250X2V4Kys7CiAgICAgICAgfQogICAgICAgIGNudF9jb21wKys7CiAgICAgICAgYVtqKzFdPWtleTsKICAgIH0KCiAgICBwcmludGFycihhLG4pOwogICAgcHJpbnRmKCJcbiIpOwogICAgcHJpbnRmKCJOdW1iZXIgb2YgY29tcGFyaXNvbjogJWRcbiIsY250X2NvbXApOwogICAgcHJpbnRmKCJOdW1iZXIgb2YgZXhjaGFuZ2U6ICVkIixjbnRfZXgpOwoKfQoqLwovKgp2b2lkIHByaW50YXJyKGludCBhW10saW50IG4pCnsKICAgIGZvcihpbnQgaT0wO2k8bjtpKyspCiAgICB7CiAgICAgICAgcHJpbnRmKCIlZCAiLGFbaV0pOwogICAgfQp9CmludCBtYWluKCkKewogICAgcHJpbnRmKCJFbnRlciBuOiAiKTsKICAgIGludCBuOwogICAgc2NhbmYoIiVkIiwmbik7CiAgICBwcmludGYoIkxpc3Q6ICIpOwogICAgaW50IGFbbl07CiAgICBmb3IoaW50IGk9MDtpPG47aSsrKQogICAgewogICAgICAgIHNjYW5mKCIlZCIsJmFbaV0pOwogICAgfQoKICAgIGZvcihpbnQgaT0wO2k8bjtpKyspCiAgICB7CiAgICAgICAgZm9yKGludCBqPTE7ajxuO2orKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKGFbai0xXT5hW2pdKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpbnQgdG1wPWFbai0xXTsKICAgICAgICAgICAgICAgIGFbai0xXT1hW2pdOwogICAgICAgICAgICAgICAgYVtqXT10bXA7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgfQoKICAgIHByaW50YXJyKGEsbik7Cgp9CiovCgoKdm9pZCBwcmludGFycihpbnQgYVtdLGludCBuKQp7CiAgICBmb3IoaW50IGk9MDtpPG47aSsrKQogICAgewogICAgICAgIHByaW50ZigiJWQgIixhW2ldKTsKICAgIH0KfQppbnQgbWFpbigpCnsKICAgIHByaW50ZigiRW50ZXIgbjogIik7CiAgICBpbnQgbjsKICAgIHNjYW5mKCIlZCIsJm4pOwogICAgcHJpbnRmKCJMaXN0OiAiKTsKICAgIGludCBhW25dOwogICAgZm9yKGludCBpPTA7aTxuO2krKykKICAgIHsKICAgICAgICBzY2FuZigiJWQiLCZhW2ldKTsKICAgIH1mb3IoaW50IGk9MDtpPG47aSsrKQogICAgewogICAgICAgIGludCBtaW49YVtpXTsKICAgICAgICBpbnQgaWR4PWk7CiAgICAgICAgZm9yKGludCBqPTE7ajxuO2orKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKGFbal08bWluKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBtaW49YVtqXTsKICAgICAgICAgICAgICAgIGlkeD1qOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpbnQgdG1wPWFbaV07CiAgICAgICAgYVtpXT1taW47CiAgICAgICAgYVtpZHhdPXRtcDsKCiAgICB9CgogICAgZm9yKGludCBpPTA7aTxuO2krKykKICAgIHsKICAgICAgICBpbnQgbWluPWFbaV07CiAgICAgICAgaW50IGlkeD1pOwogICAgICAgIGZvcihpbnQgaj1pKzE7ajxuO2orKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKGFbal08bWluKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBtaW49YVtqXTsKICAgICAgICAgICAgICAgIGlkeD1qOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpbnQgdG1wPWFbaV07CiAgICAgICAgYVtpXT1taW47CiAgICAgICAgYVtpZHhdPXRtcDsKCiAgICB9CiAgICBpbnQgc3VtPTA7CiAgICBmb3IoaW50IGk9MDtpPG47aSsrKQogICAgewogICAgICAgIHN1bSs9YVtpXTsKICAgIH0KCiAgICBwcmludGYoIk1lYW46ICUuMmZcbiIsKGZsb2F0KXN1bS9uKTsKCiAgICBpZihuJjEpIHByaW50ZigiTWVkaWFuOiAlZCIsYVtuLzJdKTsKICAgIGVsc2UgcHJpbnRmKCJNZWRpYW46ICUuMWYiLChhW24vMl0rYVsobi8yKS0xXSkvMi4wKTsKCn0KCgoKCgoKCgoKCgoKCgoKCgoKCgovKgojaW5jbHVkZSA8c3RkaW8uaD4KCnZvaWQgaW5zZXJ0aW9uU29ydChpbnQgYXJyW10sIGludCBuKSB7CiAgICBpbnQgaSwga2V5LCBqOwoKICAgIGZvciAoaSA9IDE7IGkgPCBuOyBpKyspIHsKICAgICAgICBrZXkgPSBhcnJbaV07CiAgICAgICAgaiA9IGkgLSAxOwoKICAgICAgICAvLyBNb3ZlIGVsZW1lbnRzIGdyZWF0ZXIgdGhhbiBrZXkKICAgICAgICAvLyBvbmUgcG9zaXRpb24gYWhlYWQKICAgICAgICB3aGlsZSAoaiA+PSAwICYmIGFycltqXSA+IGtleSkgewogICAgICAgICAgICBhcnJbaiArIDFdID0gYXJyW2pdOwogICAgICAgICAgICBqLS07CiAgICAgICAgfQoKICAgICAgICBhcnJbaiArIDFdID0ga2V5OwogICAgfQp9Cgp2b2lkIHByaW50QXJyYXkoaW50IGFycltdLCBpbnQgbikgewogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspCiAgICAgICAgcHJpbnRmKCIlZCAiLCBhcnJbaV0pOwogICAgcHJpbnRmKCJcbiIpOwp9CgppbnQgbWFpbigpIHsKICAgIGludCBhcnJbXSA9IHsxMiwgMTEsIDEzLCA1LCA2fTsKICAgIGludCBuID0gc2l6ZW9mKGFycikgLyBzaXplb2YoYXJyWzBdKTsKCiAgICBwcmludGYoIk9yaWdpbmFsIGFycmF5OiAiKTsKICAgIHByaW50QXJyYXkoYXJyLCBuKTsKCiAgICBpbnNlcnRpb25Tb3J0KGFyciwgbik7CgogICAgcHJpbnRmKCJTb3J0ZWQgYXJyYXk6ICIpOwogICAgcHJpbnRBcnJheShhcnIsIG4pOwoKICAgIHJldHVybiAwOwp9CiovCg==