1. 程式人生 > >【CodeForces - 122B】Lucky Substring(思維)

【CodeForces - 122B】Lucky Substring(思維)

Petya loves lucky numbers. Everybody knows that lucky numbers are positive integers whose decimal representation contains only the lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not.

One day Petya was delivered a string s

, containing only digits. He needs to find a string that

  • represents a lucky number without leading zeroes,
  • is not empty,
  • is contained in s as a substring the maximum number of times.

Among all the strings for which the three conditions given above are fulfilled, Petya only needs the lexicographically minimum one. Find this string for Petya.

Input

The single line contains a non-empty string s whose length can range from 1 to 50, inclusive. The string only contains digits. The string can contain leading zeroes.

Output

In the only line print the answer to Petya's problem. If the sought string does not exist, print "-1" (without quotes).

Examples

Input

047

Output

4

Input

16

Output

-1

Input

472747

Output

7

Note

The lexicographical comparison of strings is performed by the < operator in the modern programming languages. String x is lexicographically less than string yeither if x is a prefix of y, or exists such i (1 ≤ i ≤ min(|x|, |y|)), that xi < yiand for any j (1 ≤ j < ixj = yj. Here |a| denotes the length of string a.

In the first sample three conditions are fulfilled for strings "4", "7" and "47". The lexicographically minimum one is "4".

In the second sample s has no substrings which are lucky numbers.

In the third sample the three conditions are only fulfilled for string "7".

題意:

給你一個字串,找出一個非空的,只包含4和7的字典序最小的子串,並且要包含出現次數最多的幸運數字。

先看有無4和7,沒有輸出-1,有的話,找出現數量最多的。因為是字典序最小所以如果有4或7,那麼一定是這兩個中的一個(即只打印4或7)。

思路:

只要看懂了題意,問題就變得很簡單了。

#include<stdio.h>
#include<string.h>
#include<queue>
#include<set>
#include<iostream>
#include<map>
#include<stack>
#include<cmath>
#include<algorithm>
#define ll long long
#define mod 1000000007
#define eps 1e-8
using namespace std;
int main()
{
	char s[50000];
	cin>>s;
	int l =strlen(s);
	int fo=0,se=0;
	for(int i=0;i<l;i++)
	{
		if(s[i]=='4') fo++;
		else if(s[i]=='7') se++;
	}
	if(fo==0&&se==0)
	printf("-1\n");
	else if(fo>=se)
	printf("4\n");
	else
	printf("7\n"); 
	return 0;
}