首页 > 代码库 > 【HackerRank】Gem Stones
【HackerRank】Gem Stones
Gem Stones
John has discovered various rocks. Each rock is composed of various elements, and each element is represented by a lowercase latin letter from ‘a‘ to ‘z‘. An element can be present multiple times in a rock. An element is called a ‘gem-element‘ if it occurs at least once in each of the rocks.
Given the list of rocks with their compositions, display the number of gem-elements that exist in those rocks.
Input Format
The first line consists of N, the number of rocks.
Each of the next N lines contain rocks‘ composition. Each composition consists of lowercase letters of English alphabet.
Output Format
Print the number gem-elements that exist in those rocks.
Constraints
1 ≤ N ≤ 100
Each composition consists of only small latin letters (‘a‘-‘z‘).
1 ≤ Length of each composition ≤ 100
题解:
1 import java.io.*; 2 import java.util.*; 3 import java.math.*; 4 5 6 public class Solution { 7 static int[] Gem_Stones(String[] ele){ 8 int[] answer = new int[27]; 9 for(int i = 0;i < ele.length;i++){10 boolean[] has = new boolean[27];11 for(int j =0;j < ele[i].length();j++){12 char temp = ele[i].charAt(j);13 if(!has[temp-‘a‘]){14 answer[temp-‘a‘]++;15 has[temp-‘a‘] = true;16 }17 }18 }19 return answer;20 }21 22 23 public static void main(String[] args) {24 Scanner in = new Scanner(System.in);25 int t;26 t = in.nextInt();27 String[] strings= new String[t];28 for(int i = 0;i < t;i++){29 strings[i] = in.next(); 30 }31 int[] answer = Gem_Stones(strings);32 int count = 0;33 for(int i = 0;i < answer.length;i++)34 if(answer[i]== t )35 count++;36 System.out.print(count);37 }38 }