728x90
코딜리티 코딩테스트 레슨2
<문제 요약>
홀수 정수들의 배열 A에서 같은 정수들이 짝을 이룬다.
짝이 없는 홀수를 반환하는 함수를 작성한다.
ex) A = { 9, 3, 9, 3, 9, 7, 9 } 에서 7을 반환
<문제 풀이>
for문으로 일치하는 숫자를 돌리면 시간이 오래걸려 포퍼먼스 점수가 낮게 나온다.
비트연산자 AND(&), OR(|), XOR(^) 결과표
연산자 | 비트1 | 비트2 | 결과 |
& | 0 | 0 | 0 |
0 | 1 | 0 | |
1 | 0 | 0 | |
1 | 1 | 1 | |
| | 0 | 0 | 0 |
0 | 1 | 1 | |
1 | 0 | 1 | |
1 | 1 | 1 | |
^ | 0 | 0 | 0 |
0 | 1 | 1 | |
1 | 0 | 1 | |
1 | 1 | 0 |
두 비트가 다른지 비교할 수 있는 XOR(^) 연산자를 사용할 수 있다.
class Solution {
public int solution(int[] A) {
int unpairedElement = 0;
for(int i = 0; i <A.length; i++){
unpairedElement = unpairedElement ^ A[i];
}
return unpairedElement;
}
}
728x90
'Algorithm' 카테고리의 다른 글
JAVA / Codility Lesson 4 / FrogRiverOne (0) | 2021.05.11 |
---|---|
JAVA / Codility Lesson 3 / PermMissingElem (0) | 2021.05.07 |
JAVA / Codility Lesson 1 / BinaryGap (0) | 2021.04.20 |
C++ / 프로그래머스 / 네트워크 / 문제 풀이 (0) | 2021.04.14 |
C++ / 프로그래머스 / 타겟 넘버 / 문제 풀이 (0) | 2021.04.12 |
댓글