본문 바로가기
반응형

SWE326

[성실코딩 20일차] 백준 #1922 네트워크 연결 / 그래프 오랜만에 푸는 그래프 문제!! 너무 오랜만이라서 데이터구조 수업 생각이 새록새록 났다 어렵지는 않지만 실행시간이 오래걸리는 것 같다 사용한 연결 선의 비용을 INF무한으로 바꿔주는 대신, 따로 저장하고 있는게 더 빠를까욤,,,?!! 아니면 모든 노드에 방문했는지 함수로 계속 확인해주는게아니라, 방문한 노드 갯수들 세고 있는게 더 빠를까욤,,?!!? #include using namespace std; #define INF 987654321 int n; // 컴퓨터의 수 n; //컴퓨터의 수 cin >> m; // 초기화 for (int i = 1; i a >> b >> c; graph[a][b] = c; graph[b][a] = c; } // 연산 int cost = 0; // 전체 합 최소비용 pair.. 2018. 11. 12.
[성실코딩 20일차] 백준 #9372 상근이의 여행 ** BFS, DFS 어떤걸로 풀든 반복문을 나올 조건을 모르겠다.참고한 링크 첫 번째 코드에서는 탑승하는 비행기의 수가 국가의 수보다 작을 때까지만 무한루프를 돈다. 그러면 결국 이 문제의 답은 항상 국가의수-1 이라는 걸 알고푸는거 아닌가,,,?ㅜㅜ 다른 문제를 가지고 연습을 해야겠다. 참고 링크 https://m.blog.naver.com/PostView.nhn?blogId=h0609zxc&logNo=221317028147&categoryNo=1&proxyReferer=&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F http://lmcoa15.tistory.com/59 2018. 11. 12.
[성실코딩 19일차] 백준 #10799 쇠막대기 / 스택 너무 오랜만에 백준을 풀지만 오늘도 건강한 정신상태가 아니당 너므 졸리다아아ㅏㅇ아ㅏㅏㅏ 게으름 코딩입니다ㅠ 이 문제 재밌음!!! 쉬움ㅋㄷ #include #include #include using namespace std; int main() { stack s; string str; cin >> str; int cnt = 0; // 막대기 개수 s.push(str[0]); for (int i = 1; i < str.length(); i++) { switch (str[i]) { case '(': s.push(str[i]); break; case ')': if (str[i-1]=='(') { // 레이저인 경우 s.pop(); // 레이저 '('빼줌 cnt = cnt + s.size(); } else { /.. 2018. 11. 8.
k-d Tree k차원 트리 kd tree kd tree에서 어떤 원소와 가장 가까운 값을 찾는 방법이 어려웠다. 방법은 먼저, BST처럼 찾으려는 값을 해당 노드와 비교하여 작으면 왼쪽, 크면 오른쪽으로 tree를 타고 내려가고 타고 내려가면서 직선거리를 계산해 가장 작은 값을 구한다. 그리고 타고 내려온 노드에서 root로 타고 올라가며 해당 노드의 경계선과의 거리가 최소거리보다 짧을 경우, 해당노드의 반대편도 검사를 해줘야한다. 교수님 C언어 구현 코드는 다음과 같다. //(_x,_y)가 주어졌을 때 axis를 고려하여 _root struct kdtree_node * whichWayToGo(struct kdtree_node *_root, int _x, int _y, int axis) { if (axis == 0) // x축 비교 { if (.. 2018. 11. 7.
반응형