Notice
Recent Posts
Recent Comments
Link
«   2025/10   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

코딩로그

[백준/BOJ/C++] 3449번 해밍 거리 본문

YJ/C++

[백준/BOJ/C++] 3449번 해밍 거리

Team DAON 2021. 10. 21. 16:56

[문제]

해밍 거리란 두 숫자의 서로 다른 자리수의 개수이다. 두 이진수가 주어졌을 때, 해밍 거리를 계산하는 프로그램을 작성하시오.

 

[입력]

입력을 여러 개의 테스트 케이스로 이루어져 있다. 첫째 줄에는 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 두 줄로 이루어져 있다. 각 줄에는 이진수가 하나씩 주어진다. 두 이진수는 길이가 서로 같고, 100자리를 넘지 않는다.

 

[출력]

각 테스트 케이스에 대해서, 해밍 거리를 계산한 뒤, "Hamming distance is X."라고 출력한다. X는 해밍 거리이다.

 

[Source Code]

#include <stdio.h>
#include <iostream>
#include <algorithm>
#include <string>
#include <cmath>
#include <vector>
using namespace std;

int main() {
	int test;
	cin >> test;
	int *arr = new int[test];

	for(int i  = 0; i < test; i++){
		string a, b;
		int count = 0;
		cin >> a >> b;
		for(int j = 0; j < a.length(); j++){
			if(a[j] != b[j])
				count++;
		}
		arr[i] = count;
	}

	for(int i = 0; i < test; i++)
		cout << "Hamming distance is " << arr[i] <<".\n";
}

[결과 화면]

'YJ > C++' 카테고리의 다른 글

[백준/BOJ/C++] 15969번 행복  (0) 2021.10.21
[백준/BOJ/C++] 2480번 주사위 세개  (0) 2021.10.21
[백준/BOJ/C++] 5523번 경기 결과  (0) 2021.10.21
[백준/BOJ/C++] 11948번 과목선택  (0) 2021.10.21
[백준/BOJ/C++] 9610번 사분면  (0) 2021.10.21