Architect Omar is responsible for furnishing the new apartments after completion of its construction. Omar has a set of living room furniture, a set of kitchen furniture, and a set of bedroom furniture, from different manufacturers.
In order to furnish an apartment, Omar needs a living room furniture, a kitchen furniture, and two bedroom furniture, regardless the manufacturer company.
You are given a list of furniture Omar owns, your task is to find the maximum number of apartments that can be furnished by Omar.
The first line contains an integer T (1 ≤ T ≤ 100), where T is the number of test cases.
The first line of each test case contains an integer n (1 ≤ n ≤ 1000), where n is the number of available furniture from all types. Then nlines follow, each line contains a string s representing the name of a furniture.
Each string s begins with the furniture's type, then followed by the manufacturer's name. The furniture's type can be:
- bed, which means that the furniture's type is bedroom.
- kitchen, which means that the furniture's type is kitchen.
- living, which means that the furniture's type is living room.
All strings are non-empty consisting of lowercase and uppercase English letters, and digits. The length of each of these strings does not exceed 50 characters.
For each test case, print a single integer that represents the maximum number of apartments that can be furnished by Omar
1
6
bedXs
kitchenSS1
kitchen2
bedXs
living12
livingh
1
这个题水题,用find()写。
代码:
1 //E. The Architect Omar-find函数 2 #include<iostream> 3 #include<cstring> 4 #include<cstdio> 5 #include<queue> 6 #include<algorithm> 7 #include<cmath> 8 using namespace std; 9 int main(){ 10 int t,n; 11 scanf("%d",&t); 12 while(t--){ 13 scanf("%d",&n); 14 int num1=0,num2=0,num3=0; 15 for(int i=0;i<n;i++){ 16 string s; 17 cin>>s; 18 if(s.find("bed")==0)num1++; 19 if(s.find("kitchen")==0)num2++; 20 if(s.find("living")==0)num3++; 21 } 22 //cout<<num1<<" "<<num2<<" "<<num3<<endl; 23 int ans=min(num1/2,min(num2,num3)); 24 printf("%d\n",ans); 25 } 26 return 0; 27 }