semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
main()
{
  int i,max,second,a[301];
  char c;
  i=1;
  max=0;
  second=0;
  do
   { scanf("%d",&a[i]);
     if(a[i]>max)
      { second=max;
        max=a[i];
      }
     else if(a[i]>second&&a[i]<max)
      second=a[i];
     if(scanf("%c",&c)==EOF)break;
     i++;
   }while(c==',');
  if((i==2)||(max==a[1]&&second==0))printf("No");
    else printf("%d",second);

  /*scanf("%d",a[1]);
  i=2;
  max=a[1];
  second=0;
  while(scanf(",%d",&a[i])!=EOF)
   { if(a[i]>max)
      { second=max;
        max=a[i];
      }
     else if(a[i]>second&&a[i]<max)
      second=a[i];
     i++;
   }
  if((i==2)||(max==a[1]&&second==0))printf("NO");
    else printf("%d",second);*/

  return 0;
}
void main()
{
	int a[1000];
	char c;
	char d;
	int n;
	int i,j;
	int flag=-1;
	int big=0;
	int second=0;
	for(i=0;;i++)
	{
		scanf("%d",&a[i]);
		c=getchar();
		if(c!=',')
		{
			break;
		}
	}
	n=i;
	for(i=0;i<=n;i++)
	{
		if(a[i]>big)
		{
			big=a[i];
		}
	}
	for(i=0;i<=n;i++)
	{
		if(a[i]==big)
		{
			a[i]=-1;
		}
	}
	for(i=0;i<=n;i++)
	{
		if(a[i]>flag)
		{
			flag=a[i];
		}
	}
	if(flag!=-1)
	{
		printf("%d",flag);
	}
	else
	{
		printf("No");
	}
}
int main()
{
	static int a[300];
	int i,max=0,cmax=0;
	scanf("%d",&a[0]);
	for(i=1;getchar()==',';i++)
	{
		scanf("%d",&a[i]);
	}

	for(i=0;i<300;i++)
	{
		if(a[i]>max)
			max=a[i];
	}

	for(i=0;i<300;i++)
	{
		if((a[i]!=max)&&(a[i]>cmax))
			cmax=a[i];
	}
	if(cmax==0)
		printf("No\n");
		else
	printf("%d",cmax);
	return 0;
}
void main()
{
char c=',';int i=0,a[301],j,max=0;
while(c==',')   {scanf("%d%c",&a[i],&c);i++;}
for(j=0;j<i;j++)    {if(a[j]>max)  max=a[j];}
for(j=0;j<i;j++)    {if(a[j]==max)  a[j]=0;}
max=0;
for(j=0;j<i;j++)    {if(a[j]>max)  max=a[j];}
if(max==0)   printf("No");
else   printf("%d",max);
}
int turn(char a[])
{ int sum=0,i;
  for(i=0;a[i]!='\0';i++)
  sum=sum*10+a[i]-'0';
return sum;
}
int main()
{  char str[300][5]={'\0'},c;
   int i,j,num[300],max,nmax,count;
   for(i=0,j=0;(c=getchar())!='\n';j++)
   {if (c==',') {i++;j=-1;}
   else str[i][j]=c;}
   count=i+1;
   for(i=0;i<count;i++)
	   num[i]=turn(str[i]);
   max=num[0];nmax=0;
   for(i=0;i<count-1;i++)
	  { if(num[i+1]>max) {nmax=max;max=num[i+1];}
	   else if((max-num[i+1]<max-nmax)&&max!=num[i+1]) nmax=num[i+1];}
   for(i=0;i<count-1;i++)
	   if(num[i+1]!=num[i]) break;
	   if(i==count-1) printf("No\n");
	   else printf("%d\n",nmax);
	   return 0;
}
void main()
{
	int i,max,mac=-1;
	scanf("%d",&max);
	while(getchar()!='\n')
	{
		scanf("%d",&i);
		if(i>max)
		{
			mac=max;
			max=i;
		}
		else if(i<max&&i>mac)
			mac=i;
	}
		if(mac!=-1&&mac!=max)
			printf("%d",mac);
		else
			printf("No");
}
int main()
{
	int a[300]={0},i,j,c,sum=0,temp;
	for(i=1;i<=300;i++)
	{
		scanf("%d",&a[i-1]);
		c=getchar();
		if(c==10) break;
	}                                         //??????
    for(i=1;i<=300;i++)
	{
		for(j=1;j<=300;j++)
		{
			if(i==j) continue;
			else if(a[i-1]==a[j-1]) a[i-1]=0;
		}
	}                                       //??
	for(i=1;i<300;i++)
	{
		if(a[i-1]>a[i])
		{
			temp=a[i-1];
			a[i-1]=a[i];
			a[i]=temp;
		}
	}                                      //?????????
	for(i=1;i<299;i++)
	{
			if(a[i-1]>a[i])
		{
			temp=a[i-1];
			a[i-1]=a[i];
			a[i]=temp;
		}
	}                                             //????????
	if(a[298]==0) printf("No");
		else printf("%d",a[298]);
	return 0;
}
int checkprime(int x)
{
	int i;
	if (x==2) return 1;
	else
	{
		for (i=2;i<=sqrt(x)+1;i++)
		{
			if (x%i==0) return 0;
		}
		return 1;
	}

}

int zuida(int x,int y)
{
	if (y==1) return 1;
	else
	{
	if (x%y==0) return y;
	else 
	{
	
	return zuida(y,x%y);
	}
	}
}


main ()
{
	int i,j,a[400],n=0,max=0,max1=0;
	char *p,s[1300];
	scanf("%s",s);
	memset(a,0,sizeof(a));
	for (p=s;*p!='\0';p++)
	{
		if (*p==',') n++;
		else 
		{
			a[n]=a[n]*10+(*p-'0');
		}
	}

	if (n==0) 
		{
		printf("No");return 0;
		}
	for (i=0;i<=n;i++)
	{
		if (a[i]>a[max])
			max=i;
	}
	
	for (i=0;i<=n;i++)
	{	
		if (a[i]<a[max])
			break;
	}
	if (i==(n+1)) {printf("No");return 0;}
	else
	{
		max1=i;
	for (j=i;j<=n;j++)
		{
			if (a[j]==a[max]) continue;
			else
			{
			if (a[j]>a[max1])
				max1=j;
			}
		}
	}

	printf("%d",a[max1]);

	return 0;

}
void main()
{
	char a[1500]={0};
	int b[300]={0},c[300]={0},s=1,i,n,p=0,t=0,j,x,z,m;
	gets(a);
	n=strlen(a);
	for(i=0;i<n;i++)
	{
		if(a[i]!=',')a[i]=a[i]-48;
		else {b[s]=i;s++;}
	}
	b[0]=-1;b[s]=n;
	for(i=0;i<=s;i++)
	{
		
		for(j=b[i]+1;j<=b[i+1]-1;j++)
			c[t]=c[t]*10+a[j];
		t++;
	}
	m=c[0];
	for(i=1;i<s;i++)
		if(c[i]>m)m=c[i];
		x=0;
		for(i=0;i<s;i++)
		{
			z=0;
			for(j=0;j<s;j++)
				if((c[j]!=m)&&(c[j]>c[i])){z=1;break;}
				if((z==0)&&(c[i]!=m)){printf("%d",c[i]);x=1;break;}
		}
		if(x==0)printf("No");
}
void main()
{
	char s[2000];int num=0,i,j,temp1,temp2,len;int b[300];
	scanf("%s",s);
	len=strlen(s);
	for(i=0;i<300;i++)
		b[i]=0;
	for(i=0,j=0;i<len;i++)
	{   if(s[i]!=',')
		{
			b[j]=b[j]*10+s[i]-'0';
		}
		if(s[i]==',')j++;
	}
	num=j+1;
    if(num==1)printf("No");
	else 
	{
	for(i=1;i<num&&b[0]==b[i];i++);
	if(i==num)printf("No");
	else
	{
		for(i=0,temp1=b[0];i<num;i++)
			if(temp1<b[i])temp1=b[i];
		for(i=0,temp2=b[0];i<num;i++)
			if(temp2>b[i])temp2=b[i];
		for(i=0;i<num;i++)
			if(b[i]<temp1&&temp2<b[i])temp2=b[i];
		printf("%d",temp2);
	}
	}

}
void main()
{
	int i,j,n,a[300],temp;
	for(i=0;scanf("%d,",&a[i])!=EOF;i++);
	n=i;
	if(n==1)
		printf("No");
	else
	{
		for(i=0;i<n-1;i++)
			for(j=i+1;j<n;j++)
				if(a[i]<a[j])
				{
					temp=a[i];
					a[i]=a[j];
					a[j]=temp;
				}
		for(i=0;i<n-1;i++)
			if(a[i]!=a[i+1])
				break;
		if(i==n-1)
			printf("No");
		else
			printf("%d",a[i+1]);
	}
}
int main()
{
	unsigned int a[301];
	char b;
	int i=1,j,tr,p=0;
	while(1)
	{
		scanf("%d",&a[i]);
		scanf("%c",&b);
		if(b!=',')
			break;
		i++;
	}
	if(i==1)
	{printf("No");p=1;}
    else
	{for(j=i;j>=2;j--)
	{
		if(a[j]!=a[j-1])break;
		if(j==2) 
		{p=1;printf("No");}
	}
	}

	if(p!=1)
	{
		for(j=i;j>=2;j--)
	{
		if(a[j]>=a[j-1])
		{tr=a[j-1];a[j-1]=a[j];a[j]=tr;}
	}
	for(j=i;j>=3;j--)
	{
		if(a[j]>=a[j-1]&&a[j]!=a[1]||a[j-1]==a[1])
		{tr=a[j-1];a[j-1]=a[j];a[j]=tr;}
	}
	printf("%d",a[2]);
	}

}
void main()
{int a[301],b=0,c,d=0,i,j;char s;
for(i=1;i<=300;i++)
{scanf("%d",&a[i]);b=b+1;scanf("%c",&s);if(s!=',') break;}
for(i=1;i<=b;i++)
{for(j=i;j<=b;j++) {if(a[i]!=a[j]) d=1;
	if(a[j]>a[i]){c=a[i];a[i]=a[j];a[j]=c;}}}
if((d==0)||(b==1)) printf("No\n");
for(i=2;i<=b;i++) {if(a[i]!=a[1]){printf("%d\n",a[i]);break;}}
}
int b[10000]={0};

int main()
{
	int n=1,i,j,k,a[10000];
    scanf("%d",&a[1]);
	do
	{
		++n;
	}while(scanf(",%d",&a[n]));
	for(i=1;i<n;++i)
	{
		b[a[i]]++;
	}
	k=0;
	for(b[j=9999];j>=1;--j)
	{
		if(b[j]>0) k=k+1;
		if(k==2) 
		{
			printf("%d\n",j);
			break;
		}
	}
	if(j==0) printf("No\n");
	return(0);
}
void main()
{
	unsigned a[300];
	int i=0,m,l,t;
	char c;
	do
	{
		scanf("%d",&a[i]);
		i++;
		c=getchar();
	}while(c!='\n');
	l=i;
	if(l==1)
		printf("No");
	else 
	{
	m=0;
	for(i=1;i<l;i++)
		if(a[i]>a[m])
			m=i;
		t=m;
		m=0;
		while(a[m]==a[t])m++;
		for(i=0;i<l;i++)
		if(a[i]<a[t]&&a[i]>a[m])
			m=i;
		if(a[m]==a[t]||m==l)
			printf("No");
		else
			printf("%u\n",a[m]);
	}
}
void main()
{int num[300],n=0,i,j,t,flag=0;
 char c;
 do
{
	scanf("%d",&num[n++]);
}while(c=getchar()!='\n');

 if(n==1) printf("No");
 else 
 {	for(i=0;i<n-1;i++)
		for(j=0;j<n-i-1;j++)
			if(num[j]<num[j+1])
			{	t=num[j];
				num[j]=num[j+1];
				num[j+1]=t;
			}
 
 for(i=1;i<n;i++)
	if(num[i]<num[0])
	{	flag=1;
	    printf("%d",num[i]);
	    break;
	}
 if(flag==0) printf("No");
 }

 }
int main()
{
  char c=',';
  int n,a=-1,b=-1;
  while(c==',')
  {
    scanf("%d%c",&n,&c);
    if(n>a)
    {
      b=a;
      a=n;
    }
	else
	{
      if(n>b&&n<a)
	  {
	    b=n;
	  }
 
	}
  }
  if(b!=-1)
  {
    printf("%d",b);
  }
  else
  {
    printf("No");
  }
  return 0;
}
int main()
{int i,j,k,n,a[305]; char c;
for(i=1;;i++)
{scanf("%d",&a[i]);
c=getchar();
if(c=='\n') break;
}
for(j=1;j<=i-1;j++)
for(k=1;k<=i-j;k++)
if(a[k]>a[k+1]) {n=a[k]; a[k]=a[k+1]; a[k+1]=n;}
if(a[1]==a[i]) printf("No");
else 
{for(j=i-1;;j--)
if(a[j]!=a[i]) break;
printf("%d",a[j]);
}
return 0;
}
void main()
{
	int n[300]={0},i,max=0,len,maxn,t=0;
	char c;
	for(i=0;;i++)
	{
		scanf("%d",&n[i]);
		if((c=getchar())=='\n')
		break;
	}
	len=i;
	if(len==0)
		printf("No\n");
	else
	{
		for(i=1;i<=len;i++)
				if(n[0]!=n[i])
					t=1;
		if(t==0)
			printf("No\n");
		else
		{
			for(i=0;i<=len;i++)
				if(max<n[i])
					{max=n[i];maxn=i;}
			for(i=0;i<=len;i++)
				if(i!=maxn)
					if(n[maxn]==n[i])
						n[i]=0;
			n[maxn]=0;
			max=0;
			for(i=0;i<=len;i++)
				if(max<n[i])
					{max=n[i];maxn=i;}
			printf("%d\n",n[maxn]);
		}
	}
}
int main()
{
       int a[300];
       int i=0,n,max,max2;
	   char c=',';
	   while(c==',')
	   {
		   scanf("%d%c",&a[i],&c);
		   i++;
		   }
	   n=i;
		   
			   max=a[0];
		   for(i=0;i<n;i++)
			 if(a[i]>max) max=a[i];
			else continue;
				max2=0;
			for(i=0;i<n;i++)
			if(a[i]<max&&a[i]>max2)
				max2=a[i];
			else continue;
			if(max2>0)	
			printf("%d",max2);
			else printf("No");
		

return 0;
}
int main()
{
	int n,max=0,i,sec=0,a[301];
	char c;
	for(i=0;;i++)
	{
		scanf("%d%c",&a[i],&c);
		if(c!=',')
			break;
	}
	n=i;
	for(i=1;i<=n;i++)
	{
		if(a[i]>a[max])
		{
			sec=a[max];
			max=i;
		}
		else if(a[i]>sec&&a[i]<a[max])
		{
			sec=a[i];
		}
	}
	if(a[max]==sec||sec==0)
	{
		printf("No");
	}
	else
	printf("%d",sec);
	return 0;
}
int main ()
{
    int a,b,max,min,n,s=0;
    char c;
    scanf("%d%c",&a,&c);
    if (c=='\n')
    printf("No");
    else
    {  scanf("%d%c",&b,&c);
    if (a>b)
    {max=a;
    min=b;
    s=1;}
    else if (a<b)
    {max=b;
    min=a;
    s=1;}
    else 
    {max=a;
    min=b;
    s=0;}
    for (;c==',';)
    {
             scanf("%d%c",&n,&c);
             if (n!=a||n!=b)
             s=1;
              if (n>min&&n<max)
               min=n;
              else if (n>max)
               {min=max;
               max=n;}
               else if (n<min&&min==max)
               min=n;
    }

    if (s==0)
    printf("No");
    else
    printf("%d",min);}
       return 0;
}
int main() {
	int a, max=0, inf=0;
	char c;
	do {
		scanf("%d", &a);
		scanf("%c", &c);
		if (a>max) {
			inf=max;
			max=a;
		}
		else if (a==max) {}
		else if (a>=inf) {
			inf=a;
		}
	}while (c==',');
	if (max==inf) {
		printf("No");
	} 
	else if (inf==0) {
		printf("No");
	}
	else {
		printf("%d", inf);
	}
	return 0;
}
int main()
{
	int swap(int a , int b);
	int a[100]={0},i=0,j=0,num,t;
	char c;
	for(num=0,i=0;c!='\n';)
	{scanf("%d", &a[i]);
		num++;i++;
		c=getchar();}
	if(num!=1)
	{for(i=0;i<num-1;i++)
		for(j=0;j<num-1-i;j++)
			if(a[j]<a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}
				
			
		for(i=0;i<num;i++)
		{if(a[i]!=a[i+1]){printf("%d",a[i+1]);break;}
			else if(a[0]==a[num-1]) {printf("No");break;}}}
			else printf("No");
			return 0;}
	int swap(int a, int b)
	{int t;
		t=a;a=b;b=t;}
int main()
{
	int a[300],n,m,x,y;
	char b=',';
	for(n=0;b==',';n++)
	{scanf("%d",&a[n]);
	b=getchar();
	}
	m=0;
	x=(a[m]>=a[m+1])?a[m]:a[m+1];
	a[m+1]=(a[m]>=a[m+1])?a[m+1]:a[m];
	m++;
	while(m<n-1)
	{
		if(x<a[m+1]){y=x;x=a[m+1];a[m+1]=y;}
		else if(x==a[m+1]&&x!=a[m]){a[m+1]=a[m];}
		else if(x!=a[m])a[m+1]=(a[m]>=a[m+1])?a[m]:a[m+1];
		m++;
	}
	if(n==1)printf("No");
	else if(x==a[m])printf("No");
	else printf("%d",a[m]);
	return 0;
}
void main()
{
	int t,num[200],i=0,j,n;
	do
	{
		scanf("%d",&num[i]);i++;
	}
	while(getchar()!='\n');
	n=i;

	for(j=0;j<n;j++)
		for(i=0;i<n-j;i++)
		{
			if(num[i]<num[i+1])
			{
				t=num[i];
				num[i]=num[i+1];
				num[i+1]=t;
			}
		}
	t=num[0];
	for(i=0;i<n;i++)
	{
		if(num[i]<t) break;
	}
	if(i==n) puts("No");
	if(i<n) printf("%d",num[i]);
}
void main()
{
    char str[2000];
    int l,i,j,k,t,n,a[300]={0};
	gets(str);
	l=strlen(str);
	n=0;
	for(i=0;i<l;i++) if(str[i]==',') n++;
	j=-1;
	for(i=0;i<n;i++)
	{
		j++;
		k=j;
		while(str[j]!=',') j++;
		for(t=k;t<j;t++) a[i]+=(int)((str[t]-'0')*pow(10,j-t-1));
	}
	j++;
	for(t=j;t<l;t++) a[n]+=(int)((str[t]-'0')*pow(10,l-1-t));
    for(i=n;i>0;i--)
		for(j=0;j<i;j++)
			if(a[j]<a[j+1])
			{
				k=a[j+1];
				a[j+1]=a[j];
				a[j]=k;
			}
    t=1;
	for(i=1;i<=n;i++) if(a[i]==a[0]) t++;
	if (n==0||t==n+1) printf("No");
	else 
	{
		i=0;
		while(a[i]==a[0]) i++;
		printf("%d",a[i]);
	}
}
main()
{
	int a[300],l=0,num=0,max=0,sma=0,flag=0,i;
	char c;
	while (1)
	{
		scanf("%c",&c);
		if (num==0)
		{
			a[l]=c-'0';
			num=1;
		}
		else if (c==','||c=='\n')
		{
			num=0;
			l++;
		}
		else a[l]=a[l]*10+c-'0';
		if (c=='\n') break;
	}
	for (i=0;i<l;i++)
		if (a[i]>max) max=a[i];
	for (i=0;i<l;i++)
		if (a[i]>sma&&a[i]!=max) 
		{
			sma=a[i];
			flag=1;
		}
	if (flag==0) printf("No\n");
	else printf("%d\n",sma);
	return 0;
}
void main()
{
	int le,max,s,i,j,k,t;
	char a[1500]="\0";	
	scanf("%s",a);
	le=strlen(a);
	max=0;
	s=0;
	t=0;
	while(a[t]!=',')
	{
		max=max*10+a[t]-'0';
		t++;
	}
	j=0;
	for(i=t;i<=le-1;i++)
	{
		if(a[i]!=',')
			k=1;
		else 
		{
			if(j>max) 
			{
				if(max>s) s=max;
				max=j;
			}
			if((j>s)&&(j!=max)) s=j;
	     	j=0;
	    	k=0;
		}
		if(k==1) j=j*10+(a[i]-'0');
	}
	if(j>max) 
	{
		if(max>s) s=max;
		max=j;
	}
	if((j>s)&&(j!=max)) s=j;
	if(s==0) printf("No\n"); else printf("%d\n",s);
}
int cmp(const void*a,const void*b)
{	
	return( 0-*(int*)a+*(int*)b);
}

void main()
{
	int i=0,j,k,n,a[300]={0},max;
	char t;
	while((t=getchar())!=EOF)
	{
		if(t<='9'&&t>='0')
		a[i]=10*a[i]+t-'0';
		else
		i++;
	}
	qsort(a,i+1,sizeof(int),cmp);
	max=a[0];
	for(j=0;j<i+3;j++)
	{	
		if(a[j]==0) 
		{
			printf("No");
			break;
		}
		else if(a[j]!=max)
		{
			printf("%d",a[j]);
			break;
		}
	}

}
int main()
{
    char c[1501]={' '};
	int i=0,j=0,k=0,l,m,n,max=-1,cmx=-1,tp=0;
	scanf("%s",c);
	l=strlen(c);
	i=l-1;
	while (i>0)
	{if (c[i]!=',') {tp=tp+(c[i]-'0')*pow(10,k);k++;}
	 else
	 {if (tp>=max) {if (tp>max) cmx=max;max=tp;}
	  else if (tp>cmx) cmx=tp;
	  tp=0;k=0;
	 }
	 i--;
	}
    tp=tp+(c[0]-'0')*pow(10,k);
	if (tp>=max) {if (tp>max) cmx=max;max=tp;}
	else if (tp>cmx) cmx=tp;
	tp=0;k=0;
	if (cmx==-1) printf("No");
	else printf("%d",cmx);
	return 7;
}
int main()
{
	int a[300]={0},i,n=0;
	int max1=0,max2=0;
	char c;
	for(i=0;i<300;i++,n++)
	{
		scanf("%d",&a[i]);
		scanf("%c",&c);
		if(c!=',') break;
	}
	for(i=0;i<n+1;i++)
	{
		if(a[i]>max1) max1=a[i];
	}
	for(i=0;i<n+1;i++)
	{
		if(max1==a[i]) a[i]=-1;
	}
	for(i=0;i<n+1;i++)
	{
		if(a[i]>max2) max2=a[i];
	}
	if(n==0)
	{
		printf("No\n");
	}
	else if(max2==0)
	{
		printf("No\n");
	}
	else
	{
		printf("%d\n",max2);
	}
	return 0;
}
void main()
{
	int i=0,j,n,a[100],temp,k=0;
	char b;
	do{
		scanf("%d%c",&a[i],&b);
		i=i+1;
	}
	while(b==',');
	n=i;
	if(n==1)printf("No");
	else
	{
		for(i=0;i<n;i++)
		for(j=0;j<n-i-1;j++)
		{
			if(a[j]<a[j+1])
			{
				temp=a[j];
				a[j]=a[j+1];
				a[j+1]=temp;
			}
	
		}
	for(j=0;j<n-1;j++)if(a[j]==a[j+1])k++;
		if(k==n-1)printf("No");
		else for(i=0;i<n;i++)
		{
			if(a[i]<a[0])
			{
				printf("%d",a[i]);
				break;
			}
		}
	}
}
int main()
{
   int m,i,max,second=0;
   scanf("%d",&m);
   max=m;
   i=0;
   while(i<300)
   {
                      scanf(",%d",&m);
                      if(m>max){ 
                      second=max;
                      max=m;}
                      else if(m<max&&m>second) 
                      second=m;
					  i=i+1;
   }
   if(second==0)
   printf("No");
   else
   printf("%d\n",second);
   return 0;
}
int main ()
{   int num[1000];
    char c;
    int n,i,max1,max2;
    n=0;
    while (1)
   {  scanf("%d%c",&num[n],&c);
      n++;
      if(c!=',') break;
   }
   max1=num[0];
   max2=0;
   for(i=0;i<n;i++)
    if(num[i]>max1) max1=num[i];
   for(i=0;i<n;i++)
     if(num[i]>max2&&num[i]!=max1) max2=num[i];
   if(max2==max1||max2==0) printf("No\n");
   else printf("%d\n",max2);
  return 0;
}
int main()
{
	int n,i=1,j=0,m=0,t,sig=0;
	int num[350]={-1};
	for(n=0;n<=348;n++)
		num[n+1]=num[n];
	scanf("%d",&num[0]);
	for(i=0;num[i]!=-1;i++)
	{
	scanf(",%d",&num[i+1]);}
	for(j=0;j<=(i-1);j++)
	  {
		for(m=j;m<=(i-1);m++)
		{if(num[j]<=num[m])
		{t=num[j];num[j]=num[m];num[m]=t;}
		}
      }
     for(j=0;j<=(i-2);j++) 
     {
	  if(num[j]>num[j+1])
	  {printf("%d",num[j+1]);
	  sig=1;
	  break;}
	 }
    if(sig==0)
	  printf("No");
	 return 0;
	}
int main()
{
   int n,a,b,m1,m2;
   char q;
   scanf("%d",&a);
   m1=a;m2=-100;
   scanf("%c",&q);
   while (q==',') 
   {
     scanf("%d%c",&a,&q);
 //    printf("%d %d\n",m1,m2);
     if (a>m1) 
        {
         m2=m1;
         m1=a;
        } else 
        if ((a>m2)&&(a<m1)) 
        m2=a;
   }
  if (m2==-100)printf("No");else printf("%d\n",m2);
  // scanf("%d",&a);
   
   return 0;    
    
}
int max(int x,int y)
{
	if(x>y)
		return x;
	else
		return y;
}
int min(int x,int y)
{
	if(x<y)
		return x;
	else
		return y;
}
int main()
{
	int a[300],i=0,t1,t2,t,k;
	char s[300];
	scanf("%d",&a[0]);
	scanf("%c",&s[0]);
	t1=a[0];
	t2=a[0];
	if(s[0]==',')
	{
		i=1;
		do
		{
			scanf("%d",&a[i]);
			scanf("%c",&s[i]);
			if(a[i]==t1||a[i]==t2)
			{
				i++;
				continue;
			}
			else
			{
				t=t1;
				k=a[i];
			    t1=max(t,k);
				if(t1==t2)
					t2=min(t,k);
				else
					t2=max(t2,min(t,k));
				i++;
			}
		}while(s[i-1]==',');
		if(t1==t2)
			printf("No");
		else
			printf("%d",t2);
	}
	else
		printf("No");
    return 0;
}
int main()
{char a[100000];
long int max,submax,l,t,k,j,i,b[10000];
	gets(a);
	l=strlen(a);j=0;t=0;
	for(i=1;i<=500;i++)
	b[i]=0;
	for(i=0;i<=l-1;i++)
	{
		
		
		if(a[i]==',')
	{t=t+1;
		for(k=j;k<=i-1;k++)
		{if(a[k]=='0')b[t]=b[t]*10+0;
		if(a[k]=='1')b[t]=b[t]*10+1;
		if(a[k]=='2')b[t]=b[t]*10+2;
		if(a[k]=='3')b[t]=b[t]*10+3;
		if(a[k]=='4')b[t]=b[t]*10+4;
		if(a[k]=='5')b[t]=b[t]*10+5;
		if(a[k]=='6')b[t]=b[t]*10+6;
		if(a[k]=='7')b[t]=b[t]*10+7;
		if(a[k]=='8')b[t]=b[t]*10+8;
		if(a[k]=='9')b[t]=b[t]*10+9;
		}
	j=i+1;}
	
	}
	t=t+1;
for(k=j;k<=l-1;k++)
		{if(a[k]=='0')b[t]=b[t]*10+0;
		if(a[k]=='1')b[t]=b[t]*10+1;
		if(a[k]=='2')b[t]=b[t]*10+2;
		if(a[k]=='3')b[t]=b[t]*10+3;
		if(a[k]=='4')b[t]=b[t]*10+4;
		if(a[k]=='5')b[t]=b[t]*10+5;
		if(a[k]=='6')b[t]=b[t]*10+6;
		if(a[k]=='7')b[t]=b[t]*10+7;
		if(a[k]=='8')b[t]=b[t]*10+8;
		if(a[k]=='9')b[t]=b[t]*10+9;
		}
max=0;
for(i=1;i<=t;i++)
{
	if(b[i]>max)max=b[i];
}
submax=-1;

for(i=1;i<=t;i++)
if (b[i]!=max&&b[i]>submax)submax=b[i];
if(submax!=-1)printf("%d",submax);else printf("No");
}
void main()
{
	char k;
	unsigned a,b,x,i,t;
	scanf("%d",&a);
	b=a;
	for(i=1;i<300;i++)
	{if((k=getchar())!=',') break;
	scanf("%d",&x);
	if(x>a) {b=a;a=x;}
	if(x>b&x<a) b=x;
	if(a==b&x<b) b=x;
	}
	if(a==b) printf("No");
	else printf("%d",b);
}
int main()
{
	int a[300],i,j,k=1,t;
	char comma;
	scanf("%d",&a[0]);
	do
	{
		scanf("%c",&comma);
		if(comma!=',')
			break;
		scanf("%d",&a[k]);
		k=k+1;
	}while(k<=300);
	
	
	for(j=1;j<k;j++)
	{
		for(i=0;i<k-1;i++)
		{
			if(a[i]<a[i+1])
			{
				t=a[i+1];
				a[i+1]=a[i];
				a[i]=t;
			}
		}
	}
	if(a[0]==a[k-1])
		printf("No");
	else
	{
		for(i=1;i<=k-1;i++)
		{
			if(a[i]==a[0])
			a[i]=100000;
			if(a[i]<100000)
			{
				printf("%d",a[i]);
				break;
			}
		}
	}
	return 0;
}
int main()
{char a=44,b,c;
int x[301],y,z,i=1,j;
while(a==44)
{scanf("%d%c",&x[i],&a);if(a!=44)y=i;i++;}
for(i=1;i<=y-1;i++)
{if(x[i]>x[i+1]) {z=x[i];x[i]=x[i+1];x[i+1]=z;}
if(x[i]==x[i+1])x[i]=0;}
for(i=1;i<=y-2;i++)
{if(x[i]>x[i+1]) {z=x[i];x[i]=x[i+1];x[i+1]=z;}}

if(x[y]==x[y-1]||y==1||x[y-1]==0)printf("No");
else printf("%d",x[y-1]);
}
void main ()
{
	int a[300]={0},i,p,k=0,m,b;
	char c[1200];
    gets(c);
	for(i=0;c[i]!='\0';i++)
	{}
	c[i+1]=',';
	
	for(i=0;c[i]!=0;i++)
	{
		if(c[i]>='0'&&c[i]<='9')
	    a[k]=a[k]*10+c[i]-'0';
		
        if(c[i]==',')
		k++;
	}
	p=k;
    
    

    
	m=a[0];
	for(k=0;k<=p;k++)
			if(a[k]>m)
				m=a[k];
	for(k=0;k<=p;k++)
		if(a[k]==m)
			a[k]=0;
	
	



	b=a[0];
	for(k=0;k<=p;k++)
		if(a[k]>b)
			b=a[k];
	if(b<m&&b>0)
		printf("%d",b);
	if(b==m||b==0)
		printf("No");
		
	

}
int main()
{
	int a[300];
	int m,n=0,i;
    scanf("%d",&a[0]);
	m=a[0];
	for(i=1;i<=299;i++)
	{
		if(scanf(",%d",&a[i])==NULL) break;
		if(a[i]>m)
		{
			n=m;
			m=a[i];
		}
		else if(a[i]<m&&n<a[i])
			n=a[i];
	}
	if(n==0)printf("No\n");
	else printf("%d\n",n);
		return 0;
}
/*?????*/
void main()
{
	int a[301],n=0,i,j,b=0;
	char c;
	do
	{
		scanf("%d",&a[n]);
		n++;
	}
	while((c=getchar())!='\n');
    for(j=1;j<n;j++) 
	{
		if(a[j]!=a[j-1]) 
		{
			b++;break;
		}
		else b=0;
	}
	if(n==1||b==0) printf("No\n");
	else
	{
	    int m1=0,m2=1;
	    for(i=b-1;i<n;i++)
		{
		   if(a[i]>m1&&a[i]<m2) m1=a[i];
		   else if(a[i]>m2) 
		   {
			   m1=m2;
			   m2=a[i];
		   }
		   else continue;
		}
		printf("%d\n",m1);
	}
	
}
void main()
{
    int max(int x,int y);
	int a[100];
	int m=0,x=0,j,i=1;
	scanf("%d",&a[1]);
	while(getchar()==',')
	{
		i++;
        scanf("%d",&a[i]);
	}
    if(i!=1)
	{
		for(j=1;j<=i;j++)
			m=max(m,a[j]);
		for(j=1;j<=i;j++)
		{
			if(a[j]==m)
				a[j]=0;
		}
		for(j=1;j<=i;j++)
			x=max(x,a[j]);
		if(x!=0)
			printf("%d\n",x);
		else
			printf("No\n");
	}
	else printf("No\n");
}
int max(int x,int y)
{
	int z;
    if(x>y)z=x;
	else z=y;
	return z;
}
void main()
{
	char c=',';
	int a[300],i=0,k,j,t,m=0;
	while(c==',')
	{
		scanf("%d%c",&a[i],&c);
		i++;
	}
	if(i==0) printf("No");
	else{
		for(k=0;k<i-1;k++)
			for(j=0;j<i-1-k;j++)
			{
				if(a[j]<a[j+1])
				{
					t=a[j];
					a[j]=a[j+1];
					a[j+1]=t;
				}
			}
	for(k=1;k<i;k++)
		if(a[k]<a[0]) {printf("%d",a[k]);m=1;break;}
	if(m!=1) printf("No");

	
	}
}
int main(int argc, char *argv[])
{
    int ary[100];  char comma;
    int i,j,k;     int max,sec, count ;
    scanf("%d", &ary[0]); i=1;
    while(scanf("%c", &comma)!=EOF){
           scanf("%d",&ary[i]); 
           i++;
    }
    count =i-1;
    max= ary[0];              sec= -1;
    for(j=0; j<count ;j++){
             if(ary[j] > max){
                      sec= max;
                      max= ary[j];         
             }
             else if(ary[j] == max){
                  max= ary[j];
             }
             else if(ary[j] > sec){
                  sec= ary[j];
             }
          
    }
    if(sec != -1){
           
           cout << sec  ;
    }     
    else {
         cout <<"No";
    }
    
   
    return EXIT_SUCCESS;
}
int main()
{
    int a,b,k;
    char i;
    scanf("%d",&a);
    b=-1;
    while((i=getchar())==',')
    {
      scanf("%d",&k);
      if(k>a)
      {
      b=a;
      a=k;
      }
      if(k>b&&k<a)
      b=k;
      }
      if(a==b||b==-1)
      printf("No");
      else 
      printf("%d",b);
      return 0;
}
void main()
{
	char s[1201];
	int a[300]={0};
	int i,j=0,c,k,max,d=0;
	scanf("%s",s);
	for(i=0;s[i]!='\0';i=i+1)
	{
		switch(s[i])
		{
		case'0':a[j]=a[j]*10+0;break;
		case'1':a[j]=a[j]*10+1;break;
		case'2':a[j]=a[j]*10+2;break;
		case'3':a[j]=a[j]*10+3;break;
		case'4':a[j]=a[j]*10+4;break;
		case'5':a[j]=a[j]*10+5;break;
		case'6':a[j]=a[j]*10+6;break;
		case'7':a[j]=a[j]*10+7;break;
		case'8':a[j]=a[j]*10+8;break;
		case'9':a[j]=a[j]*10+9;break;
		case',':j=j+1;break;
		default:break;
		}
	}
	for(i=0;i<=j;i=i+1)
	{
		c=0;
		max=0;
		for(k=0;k<=j;k=k+1)
		{
			if(a[i]<a[k])
			{
				if(a[k]!=max)
				{
					max=a[k];
					c=c+1;
					if(c==2) break;
				}
			}
		}
		if(c==1)
		{
			printf("%d\n",a[i]);
			d=1;
			break;
		}
	}
	if(d==0) printf("No\n");
}
void main()
{
	int i,j,k,n,m,sum=1,a[100]={0};
	char c[1000],t;
	gets(c);
	for(i=0;c[i]!='\0';i++)
		if(c[i]==',')
			sum=sum+1;
	if(sum==1)
	{
		printf("No");
		goto loop;
	}
		i=0;
	for(k=1;k<=sum;k++)
	   {
		for(j=i;c[j]!=','&&c[j]!='\0';j++,i++)
		   a[k]=a[k]*10+c[j]-48;
		i=i+1;
	}
    for(i=1;i<sum;i++)
		for(j=1;j<=sum-i;j++)
			if(a[j+1]>a[j])
			{
				m=a[j];
				a[j]=a[j+1];
				a[j+1]=m;
			}
	for(i=1;i<sum;i++)
		if(a[i]!=a[i+1])
		{
			printf("%d",a[i+1]);
			goto loop;
		}
		printf("No");
loop:;
}
int main()
{
	int a[300]={0},i=0,t=0,fir=0,sec=0;
	char c;
	while((c=getchar())!='\n')
	{
		if(c==',') i++;
		else
		{
			a[i]*=10;
			a[i]+=(c-'0');
		}
	}
	t=i+1;
	fir=a[0];
	if(t==1) printf("No");
	else
	{
		for(i=1;i<t;i++)
		{
			if(a[i]>fir)
			{sec=fir;fir=a[i];}
			else if(a[i]<fir&&a[i]>sec)
			sec=a[i];
		}
		if(sec==0) printf("No");
		else printf("%d",sec);
	}
	return 0;
}