Submission #302967
Source Code Expand
import java.io.*;
import java.math.*;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.lang.ArrayIndexOutOfBoundsException;
/**
* @author yoshikyoto
*/
class Main extends MyUtil{
public static ArrayList<ArrayList<Integer>> g;
public static HMSI map = new HMSI();
public static void main(String[] args) throws Exception{
int n = readInt();
for(int i = 0; i < 4; i++){
String str = readLine();
map.add(str);
}
int max = 0;
String mname = "";
for(String key : map.keySet()){
int v = map.get(key);
if(max < v){
mname = key;
max = v;
}
}
p(mname);
}
}
/**
* Set周りは未実装
* @author yoshikyoto
*/
class UnionFindTree{
public int[] parent, rank;
public int n;
public Set<Integer> set;
// 初期化
UnionFindTree(int _n){
n = _n;
for(int i = 0; i < n; i++){
parent = new int[n];
rank = new int[n];
parent[i] = i;
rank[i] = 0;
}
}
// 根を求める
int find(int x){
if(parent[x] == x){
return x;
}else{
return parent[x] = find(parent[x]);
}
}
// xとyの集合を結合
void unite(int x, int y){
x = find(x);
y = find(y);
if(x == y){
return;
}
if(rank[x] < rank[y]){
parent[x] = y;
}else{
parent[y] = x;
if(rank[x] == rank[y]) rank[x]++;
}
}
// xとyが同じ集合か
boolean same(int x, int y){
return find(x) == find(y);
}
};
/**
* 整数を数え上げたりするクラス
* new Prime(int n) でnまでエラトステネスの篩を実行。
* @author yoshikyoto
* @param a[i] iが素数の時true
* @param count[i] i以下の素数の数
*/
class Prime{
boolean[] a;
int[] count;
Prime(int n){
a = new boolean[n+1];
a[0] = false; a[1] = false;
for(int i = 2; i <= n; i++) a[i] = true;
// ふるい
for(int i = 2; i < (n - 3) / 2; i++)
if(a[i]) for(int j = 2; j * i <= n; j++)
a[j * i] = false;
// 数え上げ
count = new int[n+1];
count[0] = 0;
for(int i = 1; i <= n; i++){
int gain = 0;
if(a[i]) gain = 1;
count[i] = count[i-1] + gain;
}
}
}
class AI extends ArrayList<Integer>{}
class SI extends Stack<Integer>{}
class HMI<E> extends HashMap<E, Integer>{
ArrayList<E> keyArray = new ArrayList<E>();
public void add(E key){add(key, 1);}
public void add(E key, Integer value){
if(containsKey(key)){value += get(key);
}else{keyArray.add(key);}
put(key, value);
}
}
class HMSI extends HMI<String>{}
class Q<E> extends ArrayDeque<E>{
public void push(E item){add(item);}
public E pop(){return poll();}
}
class QS extends Q<String>{}
class QI extends Q<Integer>{}
class MyUtil extends MyIO{
public static long start_time = 0;
public static void start(){start_time = System.currentTimeMillis();}
public static void end(){
if(start_time == 0) return;
long time = System.currentTimeMillis() - start_time;
if(DEBUG) p(time + "ms");
}
public static int digit(int n){return String.valueOf(n).length();}
public static String reverse(String s){
StringBuffer sb = new StringBuffer(s);
return sb.reverse().toString();
}
public static void sort(int[] a){Arrays.sort(a);}
public static void dsort(int[] a){
Arrays.sort(a);
int l = a.length;
for(int i = 0; i < l/2; i++){
int tmp = a[i]; a[i] = a[l-1-i]; a[l-1-i] = tmp;
}
}
public static void sleep(int t){try{Thread.sleep(t);}catch(Exception e){}}
public static int sum(int[] a){int s = 0; for(int i = 0; i < a.length; i++)s+=a[i]; return s;}
public static int[] cp(int[] a){
int[] b = new int[a.length];
for(int i = 0; i < a.length; i++) b[i] = a[i];
return b;
}
}
class MyIO extends MyMath{
static Scanner sc = new Scanner(new InputStreamReader(System.in));
public static char scNextChar(){return sc.next().charAt(0);}
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
public static boolean DEBUG = false;
public static int[] readIntMap() throws IOException{return parseInt(readLine().split(" "));}
public static String readLine() throws IOException{return br.readLine();}
public static int readInt() throws IOException{return Integer.parseInt(br.readLine());}
public static void p(Object o){System.out.println(o.toString());}
public static void pr(Object o){System.out.print(o.toString());}
public static void d(Object o){if(DEBUG)System.out.println(o.toString());}
public static void dr(Object o){if(DEBUG)System.out.print(o.toString());}
public static void da(Object[] o){if(DEBUG)System.out.println(Arrays.toString(o));}
public static void da(int[] arr){if(DEBUG)System.out.println(Arrays.toString(arr));}
public static void da(double[] arr){if(DEBUG)System.out.println(Arrays.toString(arr));}
public static void da(boolean[] arr){if(DEBUG)System.out.println(Arrays.toString(arr));}
public static int[] parseInt(String[] arr){
int[] res = new int[arr.length];
for(int i = 0; i < arr.length; i++)res[i] = Integer.parseInt(arr[i]);
return res;
}
public static double[] parseDouble(String[] arr){
double[] res = new double[arr.length];
for(int i = 0; i < arr.length; i++)res[i] = Double.parseDouble(arr[i]);
return res;
}
public static boolean[] parseBool(String[] arr){
int[] t = parseInt(arr);
boolean[] res = new boolean[t.length];
for(int i = 0; i < t.length; i++){
if(t[i] == 1){res[i] = true;
}else{res[i] = false;}
}
return res;
}
public static int parseInt(Object o){return Integer.parseInt(o.toString());}
}
class MyMath{
/**
* 弧度法の角度を入力してsinの値を返す(Math.sin の入力はラジアン)
*/
public static double sin(int r){return Math.sin(Math.toRadians(r));}
/**
* 弧度法の角度を入力してcosの値を返す(Math.sin の入力はラジアン)
*/
public static double cos(int r){return Math.cos(Math.toRadians(r));}
public static int max(int a, int b){return Math.max(a, b);}
public static int min(int a, int b){return Math.min(a, b);}
public static boolean isCross(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4){
// 並行な場合
int m = (x2-x1)*(y4-y3)-(y2-y1)*(x4-x3);
if(m == 0) return false;
// 媒介変数の値が0より大きく1以下なら交差する、これは問題の状況によって変わるかも。
double r =(double)((y4-y3)*(x3-x1)-(x4-x3)*(y3-y1))/m;
double s =(double)((y2-y1)*(x3-x1)-(x2-x1)*(y3-y1))/m;
return (0 < r && r <= 1 && 0 < s && s <= 1);
}
public static boolean isParallel(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4){
if((x2-x1)*(y4-y3) == (y2-y1)*(x4-x3)) return true;
else return false;
}
public static double sq(double d){return d*d;}
public static int sq(int i){return i*i;}
public static int sqdist(int x1, int y1, int x2, int y2){
return sq(x1-x2) + sq(y1-y2);}
public static double sqdist(double x1, double y1, double x2, double y2){
return sq(x1-x2) + sq(y1-y2);}
public static double dist(int x1, int y1, int x2, int y2){
return Math.sqrt(sqdist(x1, y1, x2, y2));}
public static double dist(double x1, double y1, double x2, double y2){
return Math.sqrt(sqdist(x1, y1, x2, y2));}
}
Submission Info
Submission Time |
|
Task |
B - 投票 |
User |
yoshikyoto |
Language |
Java (OpenJDK 1.7.0) |
Score |
0 |
Code Size |
7556 Byte |
Status |
WA |
Exec Time |
438 ms |
Memory |
22968 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
0 / 100 |
Status |
|
|
Set Name |
Test Cases |
Sample |
sample_01.txt, sample_02.txt, sample_03.txt |
All |
sample_01.txt, sample_02.txt, sample_03.txt, case_01.txt, case_02.txt, case_03.txt, case_04.txt, case_05.txt, case_06.txt, case_07.txt, case_08.txt, case_09.txt, case_10.txt, case_11.txt, case_12.txt, case_13.txt, case_14.txt, case_15.txt |
Case Name |
Status |
Exec Time |
Memory |
case_01.txt |
WA |
433 ms |
22908 KB |
case_02.txt |
RE |
433 ms |
22860 KB |
case_03.txt |
WA |
430 ms |
22968 KB |
case_04.txt |
AC |
438 ms |
22884 KB |
case_05.txt |
AC |
427 ms |
22852 KB |
case_06.txt |
WA |
428 ms |
22824 KB |
case_07.txt |
WA |
428 ms |
22844 KB |
case_08.txt |
WA |
430 ms |
22808 KB |
case_09.txt |
WA |
425 ms |
22908 KB |
case_10.txt |
RE |
430 ms |
22824 KB |
case_11.txt |
AC |
429 ms |
22868 KB |
case_12.txt |
WA |
427 ms |
22780 KB |
case_13.txt |
AC |
431 ms |
22900 KB |
case_14.txt |
WA |
425 ms |
22880 KB |
case_15.txt |
AC |
425 ms |
22688 KB |
sample_01.txt |
AC |
433 ms |
22912 KB |
sample_02.txt |
RE |
434 ms |
22944 KB |
sample_03.txt |
AC |
425 ms |
22864 KB |