문제
https://leetcode.com/problems/bulls-and-cows/
풀이
bulls : guess의 숫자가 secret의 올바른 위치에 있는 경우
cows : secret에 있는 숫자이지만 guess에서 잘못된 위치에 있는 경우
numsSecret==numsGuess 인 경우 bulls를 ++
정확하게 일치하는 경우 외에,
secret에 있는 숫자인 경우 -- 해주고, guess에 있는 숫자인 경우 ++ 해준다.
그 이후 배열의 숫자를 확인해서
numsGuess에 있는게 -인 경우 cows++해주고, numsSecret에 있는게 +인 경우 cows++ 해준다.
Java Code
class Solution {
public String getHint(String secret, String guess) {
int bulls=0;
int cows=0;
int[] nums=new int[10];
for(int i=0;i<secret.length();i++){
int numsSecret=secret.charAt(i)-'0';
int numsGuess=guess.charAt(i)-'0';
if(numsSecret==numsGuess){
bulls++;
}else{
if(nums[numsGuess]<0){
cows++;
}
if(nums[numsSecret]>0){
cows++;
}
nums[numsGuess]++;
nums[numsSecret]--;
}
}
return bulls + "A" + cows + "B";
}
}
'Algorithm > LeetCode' 카테고리의 다른 글
| [LeetCode 844.] Backspace String Compare (Java) (0) | 2023.02.13 |
|---|---|
| [LeetCode 438.] Find All Anagrams in a String (Java) (0) | 2023.02.06 |
| [LeetCode 98.] Validate Binary Search Tree (Java) (0) | 2023.02.06 |
| [LeetCode 142.] Linked List Cycle II (Java) (0) | 2023.01.30 |
| [LeetCode 278.] First Bad Version (Java) (0) | 2023.01.30 |


