본문 바로가기
알고리즘/SWEA

[SWEA] 1289. 원재의 메모리 복구하기

by hyerann 2019. 4. 27.

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV19AcoKI9sCFAZN&categoryId=AV19AcoKI9sCFAZN&categoryType=CODE

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

www.swexpertacademy.com

입력받은 string을 index로 한 글자씩 접근하면서 flag 값과 비교하고, flag 값과 같은 경우에는 그냥 넘어가고, flag 값과 다른 경우에만 횟수를 증가시키고 flag 값을 변경시켜주었다.

#include <iostream>
#include <ios>
#include <string>
using namespace std;

int T;
string memory;
int getResult();

int main() {
	cin.tie(0); ios::sync_with_stdio(0);
	cin >> T;
	for(int tc=1;tc<=T;tc++) {
		cin >> memory;
		cout << '#' << tc << ' ' << getResult() << "\n";
	}
	return 0;
}

int getResult() {
	int result = 0;
	char flag = '0';
	for (int i = 0; i < memory.length(); i++) {
		if (memory[i] == flag) continue;
		else {
			if (flag == '0') flag = '1';
			else flag = '0';
			result++;
		}
	}
	return result;
}

댓글