You're given strings
J
representing the types of stones that are jewels, and
S
representing the stones you have. Each character in
S
is a type of stone you have. You want to know how
many of the stones you have are also jewels.
The letters in J
are guaranteed distinct, and all characters in J
and S
are letters. Letters are case sensitive, so "a"
is considered a different type of stone from "A"
.
Example 1:
Input: J = "aA", S = "aAAbbbb" Output: 3
Example 2:
Input: J = "z", S = "ZZ" Output: 0
Note:
S
andJ
will consist of letters and have length at most 50.- The characters in
J
are distinct.
我的解答如下(我觉得我应该早点把用C++的语法写C的程序这个习惯改掉。。。):
#include<iostream>
#include<string.h>
using namespace std;
int numJewelsInStones(char* J, char* S)
{
int num = 0;
for(int i=0; i<strlen(J); i++)
{
for(int j=0; j<strlen(S); j++)
{
if(S[j] == J[i])
{
num++;
}
}
}
return num;
}
int main()
{
char J[50], S[50];
cout << "请输入钻石J:" ;
cin >> J;
cout << "请输入石头S:" ;
cin >> S;
cout << endl << numJewelsInStones(J, S);
return 0;
}