【笔试】下厨房

牛牛想尝试一些新的料理,每个料理需要一些不同的材料,问完成所有的料理需要准备多少种不同的材料。
输入描述:

每个输入包含 1 个测试用例。每个测试用例的第 i 行,表示完成第 i 件料理需要哪些材料,各个材料用空格隔开,输入只包含大写英文字母和空格,输入文件不超过 50 行,每一行不超过 50 个字符。

输出描述:

输出一行一个数字表示完成所有料理需要多少种不同的材料。

输入例子:

BUTTER FLOUR
HONEY FLOUR EGG

输出例子:

4

#include <iostream>
#include <algorithm>
#include <string>
#include <vector>
#include <sstream>
using namespace std;
int func(int line)
{
    vector<string>strVec;
    string strTemp,strSigle;
    for(int i = 0; i < line;i++)
    {
        string str1;
        getline(cin,str1);
        strTemp.append(str1);
        strTemp.append(" ");
    }
    istringstream s(strTemp);
    while(!s.eof())
    {
        s>>strSigle;
        strVec.push_back(strSigle);
    }
   sort(strVec.begin(),strVec.end());
    vector<string>::iterator last = unique(strVec.begin(),strVec.end());    
    return last - strVec.begin();

}
int main()
{
    int line;
    cin>>line;
    //cout<<line<<endl;
    cout<<func(line)<<endl;
    system("pause");
    return 0;
}
  • 总结:还有一点小bug,就是输入的时候,cin空格结束不了输入,输入不能按要求:第一行是行数。
  • 这里写图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值