愛奇芸2019秋招筆試験問題(Java)
1564 ワード
時間:20180915 10:00~12:00
一、ラッキーID
小さいCは1枚の切符があって、この切符のIDは長さが6の文字列で、すべての文字はすべて数字で、彼はこのIDを彼の辛運IDに変えたいので、彼はIDを変更し始めて、毎回操作して、彼は任意の数字を選択してそれを置き換えることができます.このIDの最初の3桁の数字の和が後の3桁の数字の和に等しい場合、このIDは幸運です.Cさんに頼んでください.少なくとも何回か操作して、IDを辛運IDに変えることができます.
入力:
入力は1行のみで、長さ6の文字列です.
出力:
この最小操作回数を出力
サンプル入力
000000
サンプル出力
0
Hint
入力サンプル2
000018
出力サンプル2
1
二、局長の食べ物
テーマ:
局長は全部でN種類の食品があって、それぞれi部があって、彼は毎日1部の食品だけを食べて、あるいは1部の食品だけを買って(一日の中で食べるか買うか、同時に行うことはできません)M日目のP食品の部数の総食品の部数の中の順位を求めます.
入力:
1行目は、3つの数N、M、Pで、それぞれ食べ物の種類、日数、要求された食べ物を表します.
2行目、N個の数は、各食べ物の部数を表す.
次にM行、1行に2つの数があり、1番目の数は食べるか買うか(Aは買う、Bは食べる)、2番目の数はどの食べ物を操作するかを表します.
出力:
P食べ物ランキング
サンプル入力:
3 4 2
5 3 1
B 1
A 2
A 2
A 3
サンプル出力:
1
一、ラッキーID
小さいCは1枚の切符があって、この切符のIDは長さが6の文字列で、すべての文字はすべて数字で、彼はこのIDを彼の辛運IDに変えたいので、彼はIDを変更し始めて、毎回操作して、彼は任意の数字を選択してそれを置き換えることができます.このIDの最初の3桁の数字の和が後の3桁の数字の和に等しい場合、このIDは幸運です.Cさんに頼んでください.少なくとも何回か操作して、IDを辛運IDに変えることができます.
入力:
入力は1行のみで、長さ6の文字列です.
出力:
この最小操作回数を出力
サンプル入力
000000
サンプル出力
0
Hint
入力サンプル2
000018
出力サンプル2
1
二、局長の食べ物
テーマ:
局長は全部でN種類の食品があって、それぞれi部があって、彼は毎日1部の食品だけを食べて、あるいは1部の食品だけを買って(一日の中で食べるか買うか、同時に行うことはできません)M日目のP食品の部数の総食品の部数の中の順位を求めます.
入力:
1行目は、3つの数N、M、Pで、それぞれ食べ物の種類、日数、要求された食べ物を表します.
2行目、N個の数は、各食べ物の部数を表す.
次にM行、1行に2つの数があり、1番目の数は食べるか買うか(Aは買う、Bは食べる)、2番目の数はどの食べ物を操作するかを表します.
出力:
P食べ物ランキング
サンプル入力:
3 4 2
5 3 1
B 1
A 2
A 2
A 3
サンプル出力:
1
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int food = sc.nextInt();
int day = sc.nextInt();
int p = sc.nextInt();
int[] foods = new int[food];
for(int i = 0; i < food; i++)
foods[i] = sc.nextInt();
sc.nextLine();
for(int i = 0; i < day; i++){
String s = sc.nextLine();
String[] str = s.split(" ");
if(str[0].equals("A"))
foods[Integer.parseInt(str[1])-1]+=1;
else if(str[0].equals("B"))
foods[Integer.parseInt(str[1])-1]-=1;
}
int result = 1;
for(int j = 0; j < food; j++){
if(foods[j] > foods[p-1])
result++;
}
System.out.println(result);
}
}