C언어/문제풀다 하나씩

DFS 간단 코드 다시 한번더! string으로 이름 불러오기

mcdn 2020. 5. 13. 15:26
반응형

심화반 가기 전에 마지막으로 하는 DFS 재귀코드

#include <iostream>
using namespace std;
string t[3];
int who[3];
void abc(int lev) {
	if (lev == 3) {
		for (int i = 0; i < lev;i++) {
			cout << t[who[i]] << " ";
		}cout << endl;
		return;
	}
	for (int i = 0;i < 3;i++) {
		who[lev] = i;
		abc(lev + 1);
	}
}

int main() {
	for (int i = 0; i < 3;i++) {
		cin >> t[i];
	}
	abc(0);
}

입력 예제

bob jason tom

출력 결과

bob bob bob bob bob jason bob bob tom bob jason bob bob jason jason bob jason tom bob tom bob bob tom jason bob tom tom jason bob bob jason bob jason jason bob tom jason jason bob jason jason jason jason jason tom jason tom bob jason tom jason jason tom tom tom bob bob tom bob jason tom bob tom tom jason bob tom jason jason tom jason tom tom tom bob tom tom jason tom tom tom

반응형