{"id":33786,"date":"2024-11-01T09:20:22","date_gmt":"2024-11-01T09:20:22","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=33786"},"modified":"2024-11-01T11:46:41","modified_gmt":"2024-11-01T11:46:41","slug":"python-coding-test-course-understanding-friendships","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/33786\/","title":{"rendered":"python coding test course, understanding friendships"},"content":{"rendered":"<p><body><\/p>\n<h2>Problem Description<\/h2>\n<p>\n        You need to develop a program that understands user relationships in a social network.<br \/>\n        The program must provide answers to the following two requests based on the friendships of the given users.\n    <\/p>\n<ul>\n<li>Print the friend list of the given user A.<\/li>\n<li>Check whether the given users A and B are friends.<\/li>\n<\/ul>\n<h2>Input Format<\/h2>\n<p>\n        The first line contains the number of users N and the number of friendships M. (1 \u2264 N \u2264 100,000, 0 \u2264 M \u2264 1,000,000)\n    <\/p>\n<p>\n        The next M lines each contain two integers A and B, meaning A is a friend of B.\n    <\/p>\n<h2>Output Format<\/h2>\n<p>\n        Print the friend list of user A in ascending order on the first line.<br \/>\n        On the second line, print &#8216;YES&#8217; or &#8216;NO&#8217; regarding whether A and B are friends.\n    <\/p>\n<h2>Example<\/h2>\n<pre>\n        Input Example:\n        5 4\n        1 2\n        1 3\n        2 4\n        3 5\n        \n        1\n        2\n\n        Output Example:\n        2 3\n        NO\n    <\/pre>\n<h2>Approach<\/h2>\n<p>\n        To solve this problem, you need to efficiently store and query friendship relationships.<br \/>\n        You can utilize graph theory by using an adjacency list or set data structure.\n    <\/p>\n<p>\n        First, initialize an empty list to store information about users and friendship relationships.<br \/>\n        Then, receive each friendship relationship as input and store the information.<br \/>\n        Sort the friend list for output and also provide a response to the friendship verification request.\n    <\/p>\n<h2>Source Code<\/h2>\n<pre>\n        def manage_friendship(n, m, friendships, a, b):\n            friends = {i: set() for i in range(1, n + 1)}\n            \n            for x, y in friendships:\n                friends[x].add(y)\n                friends[y].add(x)\n            \n            friend_list = sorted(friends[a])\n            is_friend = \"YES\" if b in friends[a] else \"NO\"\n            \n            return friend_list, is_friend\n        \n        # Input processing\n        n, m = map(int, input().split())\n        friendships = [tuple(map(int, input().split())) for _ in range(m)]\n        a = int(input())\n        b = int(input())\n\n        # Manage friendships\n        friend_list, is_friend = manage_friendship(n, m, friendships, a, b)\n\n        # Output results\n        print(\" \".join(map(str, friend_list)))\n        print(is_friend)\n    <\/pre>\n<h2>Conclusion<\/h2>\n<p>\n        This algorithm problem requires a basic understanding of data structures and algorithms to efficiently manage and<br \/>\n        query friendship relationships.<br \/>\n        In real software development, handling such data relationships often appears in platforms such as custom applications or social networks,<br \/>\n        so learning how to solve these problems is very useful.\n    <\/p>\n<h2>Appendix<\/h2>\n<p>\n        Many graph problems, such as friendship relationships, can evolve into more advanced problems through searching algorithms like DFS (Depth First Search) or BFS (Breadth First Search).<br \/>\n        Based on this problem, I hope you challenge those advanced problems as well.\n    <\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Problem Description You need to develop a program that understands user relationships in a social network. The program must provide answers to the following two requests based on the friendships of the given users. Print the friend list of the given user A. Check whether the given users A and B are friends. Input Format &hellip; <a href=\"https:\/\/atmokpo.com\/w\/33786\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;python coding test course, understanding friendships&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[145],"tags":[],"class_list":["post-33786","post","type-post","status-publish","format-standard","hentry","category-python-coding-test"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>python coding test course, understanding friendships - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atmokpo.com\/w\/33786\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"python coding test course, understanding friendships - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"Problem Description You need to develop a program that understands user relationships in a social network. The program must provide answers to the following two requests based on the friendships of the given users. Print the friend list of the given user A. Check whether the given users A and B are friends. Input Format &hellip; \ub354 \ubcf4\uae30 &quot;python coding test course, understanding friendships&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/33786\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:20:22+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:46:41+00:00\" \/>\n<meta name=\"author\" content=\"root\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:site\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:label1\" content=\"\uae00\uc4f4\uc774\" \/>\n\t<meta name=\"twitter:data1\" content=\"root\" \/>\n\t<meta name=\"twitter:label2\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data2\" content=\"2\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/33786\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33786\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"python coding test course, understanding friendships\",\"datePublished\":\"2024-11-01T09:20:22+00:00\",\"dateModified\":\"2024-11-01T11:46:41+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33786\/\"},\"wordCount\":287,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Python Coding Test\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/33786\/\",\"url\":\"https:\/\/atmokpo.com\/w\/33786\/\",\"name\":\"python coding test course, understanding friendships - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:20:22+00:00\",\"dateModified\":\"2024-11-01T11:46:41+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33786\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/33786\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/33786\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"python coding test course, understanding friendships\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/atmokpo.com\/w\/#website\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/atmokpo.com\/w\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"contentUrl\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"width\":400,\"height\":400,\"caption\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\"},\"image\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/bebubo4\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\",\"name\":\"root\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"caption\":\"root\"},\"sameAs\":[\"http:\/\/atmokpo.com\/w\"],\"url\":\"https:\/\/atmokpo.com\/w\/author\/root\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"python coding test course, understanding friendships - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/atmokpo.com\/w\/33786\/","og_locale":"ko_KR","og_type":"article","og_title":"python coding test course, understanding friendships - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"Problem Description You need to develop a program that understands user relationships in a social network. The program must provide answers to the following two requests based on the friendships of the given users. Print the friend list of the given user A. Check whether the given users A and B are friends. Input Format &hellip; \ub354 \ubcf4\uae30 \"python coding test course, understanding friendships\"","og_url":"https:\/\/atmokpo.com\/w\/33786\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:20:22+00:00","article_modified_time":"2024-11-01T11:46:41+00:00","author":"root","twitter_card":"summary_large_image","twitter_creator":"@bebubo4","twitter_site":"@bebubo4","twitter_misc":{"\uae00\uc4f4\uc774":"root","\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"2\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/33786\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/33786\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"python coding test course, understanding friendships","datePublished":"2024-11-01T09:20:22+00:00","dateModified":"2024-11-01T11:46:41+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/33786\/"},"wordCount":287,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Python Coding Test"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/33786\/","url":"https:\/\/atmokpo.com\/w\/33786\/","name":"python coding test course, understanding friendships - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:20:22+00:00","dateModified":"2024-11-01T11:46:41+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/33786\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/33786\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/33786\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"python coding test course, understanding friendships"}]},{"@type":"WebSite","@id":"https:\/\/atmokpo.com\/w\/#website","url":"https:\/\/atmokpo.com\/w\/","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","description":"","publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atmokpo.com\/w\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/atmokpo.com\/w\/#organization","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","url":"https:\/\/atmokpo.com\/w\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/","url":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","contentUrl":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","width":400,"height":400,"caption":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8"},"image":{"@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/bebubo4"]},{"@type":"Person","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7","name":"root","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","caption":"root"},"sameAs":["http:\/\/atmokpo.com\/w"],"url":"https:\/\/atmokpo.com\/w\/author\/root\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33786","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/comments?post=33786"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33786\/revisions"}],"predecessor-version":[{"id":33787,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33786\/revisions\/33787"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=33786"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=33786"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=33786"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}