题目大意:

有一个城镇,它的所有街道都是单行的,并且每条街道都是和两个路口相连。同时已知街道不会形成回路。

你的任务是编写程序求最小数量的伞兵,这些伞兵可以访问(visit)所有的路口。

aaarticlea/png;base64,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" alt="" width="418" height="288" />

像这样建二分图,最后由定理

DAG图的最小路径覆盖数=节点数(n)- 最大匹配数(m)

这样也就只需要求最大匹配数

上诉结论的证明见:http://www.cnblogs.com/jackiesteed/articles/2043934.htmlaaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABPkAAAA5CAIAAADLHGnxAAAgAElEQVR4nO1dyZIcN5KN76h/6Kxf6O7PIDMPuvTozG8Ql7Jp6aLrdI+uU1yqhuqRGf+grLuSZLFqJNNBZjyMzMQLeREzco2YAyI8HA4HAkBGZCzpbn7IJRYE4sHhD3A4klxE5FCy2WyWy2Wapmmartfr7Xa73W7X63WapovFYrFYLJfL1Wq12Wzgr9VqpU6BE9XB6gq73a7rZxI5FsmybL1eAxoVSjebzWq1wgBer9fwFxxPAAxXEACLHEx2u53CKgvgz58/q99ZAC+XSxbAWZZ1/VgixyLb7RZACH6CguhisVAAXq1WGMAO/2G1Wm23266fSeSIxOYAKwCHOsAC4CBJTqZXop6qqqzzYogOTqG9dV4SUdH+6/gai1iAuBrrvBhHooLPPauu82IMXQWBoq2qcN0AlaYoGqdix0VF/XV8jUUsQFyNdV6MI1HB555V13kxhq6CQNFWVbhugEpTFI1TseOiov46vsYiFiCuxjovxpGo4HPPquu8GENXQaBoqypcN0ClKYrGqdhxUVF/HV9jEQsQV2OdF+NIVPC5Z9V1XoyhqyBQtFUVrhug0hRF41TsuKiov46vsYgFiKuxzotxJCr43LPqOi/G0FUQKNqqCtcNUGmKonEqdlxU1F/H11jEAsTVWOfFOBIVfO5ZdZ0XY+gqCBRtVYXrBqg0RdE4FTsuKuqv42ssYgHiaqzzYhyJCj73rLrOizF0FQSKtqpNct0v5uuckw/zn5stdHGj97+eTK9OXv7O3fP3b1uorH43xZ9ffaqe//al31lF7e1ZXb/ekpt+8/HDp49fcAd/+57FCBL1WselYsdZLRqyBSou/ebjhzzP8/Wrb5otkqsRfTFfe5oy/yNFWfVuLNr7atiGKNuowFngjUgA/GItQGFa27OTtl67kojmeVAMVGrvXJrxB1Bdaa8e3bcVx+NgtR2OT+qARdu9og5DUB3ffbRQdTHnttWLDVLjEThYrexGKIaRg92TVtB/PQTX3ccCum7k4rqtWJAeN0XG5/Oiu21wXewjGipcVxS0Z1zX1YgUbn3smP+Rojb1biwWrtuIGannut5mVrhuixio9IBcFzdw/I6Oi+vyFR4FGOG6R65xCByyYrsRggHdwe5JK+i/tsB19Upv401wXBf3MSWGmn79/W2KRSUUDaboNnwevxmuy12z9u5t3Lqvenx23Ev7xXWdjUi47iHVu7EUXBfXdklI9jYsDNfFeAOa7XWjWAtghMy0pz3zvCOqK4IvBak2LgB30Ubbh9qdReCzrI0KMFA/EdZPuO6R69H5SEX/8vut0YX5nShcN0xb57oapTHaNjZw8Bn1KHzPUcd12zIi/W2KpBKKx1dfqbekvSY4seqwodIKZ+72ZTV5cvvyCs+llNesbkFmCVwN2HhxWm8H7RkKphWYwAyNkPWyzR+dHfdTDYpO43AyxT7l+tVLy8HYgFRI8IOHtRGRycPipjrU1VnmkQYZI3cZhaPcuHo3FobrYiCVSCj8CeoflIBx4cHKda+CiGisBai5hT4iU8KPo2H1vpTxjFzz/P3baoob9+kEvbghRKI6orrcfIkMghgjwvVWoqyQNepeix8/fCIjLOzV/LtU4yIYe6UNudWmVZmBGP8hknB8ssj8+dUngjTHqhD01/tfjXfn/zpqTXqeY/xXOK9usc/QZARQjZK4DyC1Vxk9SxBs9VyANPWAtJJpAfT+C7ejqiRVvVVvM8jONIbAYSuMiTMwtvtCpoNdna69I3wvTzMycvejda6r9Sg+XJcIZ8jquS7rA+2t/W2KyCYaj+zDdYmoF8TGB64/MH5/a1xXl9KfKEUdyYQX9q7RQsk6L0mvNIDruoBqicO0Rp9a4GFtRAzXZe746eMXoVyXeajeQbcT9W4sNfO69DXZOhrWXa7nugGTUXCrwKqoo9MlaJHt1TiY+fhW9eK6pN7W2o9FNZpx1zGDzhHVVfc6ioJ9mP9Mgjg8rQRUyKv3ud5Lrl/NzTF982r+XSpf4doqIVTtr0gsiTbYHVDbARXudQsmAr8spHOlfeDrcDFhr4ujug3XsHpj6tDSOphyOhwzgD3/rwfXZU4sXxa/kkLVWLCdaQqBw1ZVpetX33AwiOC6VMiQPfPiTDPSw1miBvVA63WLyvXiusR/ZQyBB9dtJZKwz02RVr4xXO3mutSovf+1sn3E19G/3r40bhEbw8xyG3VNcE+1r58+fmG86H5GkMJr6bwkvVJ/rstGFJOhForhcHjYGxE5sXRwVVF1JHNH8lxXs2OHjFbtvXo3Fut6XVXh8ELNKQgSk8JAwoPr6m+w/onCLYBtvS4TOMo9FxxGvnLqx3VJxepfTVQHVFEsBiq1rdc1Wh/93dNKQIV8q+Zy5z+XFQuBUb9/67qaf5eqH0kmpWmvzYc1BnWCUCe+p3gsQSpfB4lhwf498Qw1a+//OjhPw45//V66zxMG0WigFurkuvpLxL0DXT2h1TMZxNGh4uK66jPpYd//SrFHjWq4nWkKgYNWrfkYToLPuL8Ro0SaUowZGbW2z3X9pubp6+QOpjcSrkuVOEYhMcxT81/SAvmvLXNd0k3qXz99/MLmC/YswRWUq/OS9Eq9uS6X6BsONmYY0GUj4ME2Ips9YdLS+HNdzfPuGWK7Ve/GwnNd3tZRUFmP0d5U77kuiQXVCm+vGUa9uC6ZdSRfzYD/UsInDSKqq57r8rlPfa0EDReEJTbvf0Xt2nE17y6VwRuygdYcJfpUcwjfgGL6nlLPdc3Bu+p5nQ0z/HVYi0eFrds9l3mH1RtWv6V2GNWYwHiMn9KDvXxso1cy+j4Tilw9R1VjZE0OTcmLoEiO4Lrs5FawGRmzthfDDAYLVeXhuO6RxTCz9aMNPDu5Lu4tql/Imh/H19a4LlzE+tXSL/YsHuOo7Li/xnNd7NuZFqAJeJCZK3aqQZdwrstcR/KUXJ3suV7XBjDm7RC06KcPIoYZP6ZlBR0WV4fouV5XO7h2cTttHS1gIPB1MLMZvlbCGEQrlrrpjqPjat5dKhMhjP7lfJ4K2J797574rI9hZqb4HGsUkVMX8Tqsb5nIh/nPg+G63CPUcl3zWbDFc/rYXLUzAzQsFLl6jqrGyJocmNaNYDbMdQPMyIi1zfW6JESn7hU2ynXjQykc2tum6DRw+87rDoLr9jzy85jsuEuJifDmukaqFXywC8MB8PDxEoouXI/njI5hZmomj3e5xqTejSWS6zY0rxuQASjWAngAWFuRZQmE8dFGue7+o8wR1eVBWtg0Lb5WAlcIGqUiVshxtVCuGzIhU8KVrt0Nqe2QCucf89v3jkUZCBuGk+Ac2ax/HfRfB/6HwXVJ9CkTw+zHdX3ndcmaQbPzdc7rNsCXwhE4WLUMEFSvRuZ1W9B2c1M5Q8n5RRpNcF0apN6U9rYp0rXNmi/uWs1oW6+LFxdFct3aJtQM1+UzkfZtBQKYss5L0rHqq4m0N+5jHGLX6/rAw9mIXAH2ZFmabsdIalxtqVVNINMRq3djCea6Da7XpcsRPZ4o3ALU+/0lij7qSNOfyydashmua0l3fMj1uvZ76cmlDHtSZyVwhVSDU8aosf1q/l2qz0I7dnw/AJN74rN2z6E91+sGvQ5bw2HwPwyuy/pU9VzXa70u143qlaCtYfZYrxtiZ5pD4ECVxZtWyc7WQZq/i+vGmJHRatt5mMkyelcGuf24rinNRwP2uCmyQRG2OEmEfo88zLFcV3+bpjbEdSUP86DUkaM1NDNndS5NTvjJnT/WBg/fRnQ7ZwvDHWlkJtcO5h6qb8M0naiqCo8jw7kuCzPd+dOm6x1ZiMtX7P9Efg+F1RbtRgw4nlqszY9qCXpqiOt2n4eZEYNfkdAMu5XAkOATU5sOaF0eZo8u1RHC2kpsCNwi5Ky6tdlO+8a/rIg8zJYC1OVh5rluRCq18HojLc6UKoE/kXqua+wF8AEfbPf3+Mok1Leo3jVmYpKHOVAtw5dsTim2YnUH28l1Y8zIWLX9/XVtWe9yuqlak1y3nbmRfjdFvXnY3LsyhyQdja6qkXKPYK6Lu7EDcN0p6TP62HShcJ2XpAdq2e2N/GXuuFi9Zdf+usxisAB4OBoR3rQQm50qbpNMFcIvyKvT8rUaZet7KP7B1LuxRHBd9HuJNPg9kOu2uadLoW6uSyelyUya5THb5rpXzjbeOAYqdXJduvmwLY6DvFkr13VHM/FXC+G6jmq0OalkOii8tkMrHBWmEKMlOvbX1fwEu7XnntSENxYjRS135Z5z3SvSj6CC1a6LgROZTe9QndBuVHPb+Aaes1H6NnN6IAQOS8nEe6XEQLl8IfymarguuZSPGRmpNsl1R69H0RRFW9BjsePdKN00Ys+YNNHOdXyNRSxAXI11Xowh6R7Oq+AzWvtVb5Y1GvuMolpGhVrJhtOjmhQdlwrXDVBpiqJxKna8VWXnc2SOdLg6vsYiFiCuxjovxiAUT6zFLYIQfEZrz+rNtRInUtn553ay4fSpJkVHpcJ1A1Saomicih1vWwndFaI7aB1fYxELEFdjnRdjGAqBxBJBenDtX73xW8TvpYTutrBIUBAo2qoK1w1QaYqicSp2XFTUX8fXWLIsy7Jst9t1XpKh6Pgw0GeVHmrPquu8GENXQaBoqypcN0ClKYrGqdhxUVF/HV9jWZfSeUmGouPDQJ9Veqg9q67zYgxdBYGirapw3QCVpigap2LHRUX9dXyNJU3TNE2Xy2XnJRmKjg8DfVbpofasus6LMXQVBIq2qsJ1A1Saomicih0XFfXX8TUW4bqhOj4M9FlVbWdZ1nlJBqcC1AarUWpStCUVrhug0hRF41TsuKiov46vsQjXDdXxYaDPqhaTbzabzksyOBWgNliNUpOiLalw3QCVpigap2LHRUX9dXyNZVNK5yUZio4PA33W7Xa7Xq/TNO28JINTAWqD1Sg1KdqSCtcNUGmKonEqdlxU1F/H11gkRjSuxjovxpHoer1eLpeLxaLzkgxOBagNVqPUpGhLmuQiQ5YsyzabzWq1Wi6XKkxutVptNpvdbpdlmTpAfcCnkF9ERLqS3W63Xq8BwMvlcrVabbdbDGB8fFZKR+UVEdEEAAxRyuv1ervdAkoFwCJ9FjWjC/4DBrA6QPwHkd6KOMAiniJcd9iy2+2AJKheChp5Ln6VSO9lu91ilssCuNsSiog4ZLPZYABjNysXAIv0XvAwjRpnFP9BZCiSZRl2gAXAIjYRrjtUUckk1uv1YrGA4VjiZrlP3263m81G7fq42WywjRARaVsUAsHTAp6AD3CfDugVAIscXhSAzfkEfIDjdJUKCAMYW28RkVYFklGRgBp//0EALNKhAAI94xHM07EDDAA+SNlFOhDhukMVRXTVGhvlaRFfv7aps5FL7RdcRCTPSwCnaaoAHAo/wD8GsPRVIocRPFKzWCxC4accNRjoUQAWZ0vkYKLGCrH93Gw2Qf4DHuiBsR7huiKHERipAQc4FMAE/6YLLTImEa7bI8l0cR9selpBVAHWOeC+SriuSLQEoTcvgz8Xi0UEVci5vkoGa0T2kSAAA/wgrCbU0ZfBGpFmJQjAZKgxgqmygzVCFUSiJdoBjhgrJ2FlMlgzehGuOxghJoBQBf9WCoeZvZ1QBZH2BKNXUQWCPR8A44uAsyUAFjmAEACbxtMTwPABZsbAXROuK9KSEP9BGc+IoUZiw+OcEBGRUCEAVkwVYy8UwBACHT1eKTIgEa7bvdhaFxncwk0dT2otFotaTwv3T26+0dhTiRyNBAFYfSYR+GSpufteMlgj0qyEAjjTA5jTNHV7WuQi8JkM1gjXFWlQ3P4DiQtze/ksgMlgjVAFkTg5pAOcWwZrhOuOXoTrdi+kdan2vEMCzdukCqqp1zpJDq6Lc6sIVRCJELZDcgAYPC3AXi1VYAHMLllv8TlFjkBMAGPcsp5WHFXIjShQ4boi+4sNwMRyNkIVcBSoUAWRRiTCAV6tVp4OcM5xXYlhPgYRrtsjUS1cZYdzZEgmfUwQ18Wfsb2Q5Y4i+0sQgHH0Zi1VYLku3hlSljuK7CngY7H5OQlH3Z/rslRBACwSLYBessMCC2AVEQMAdnf9QhVEDiCe/kOOFuvuw3XdechFRibCdXshWZk/XU124YQl5mIwoAqLUoLGZcntxNMS2V8IgHHCEjNEOUPB8z4xzJjfktuJpyXSiCijul6vfQAMm71hAAeZ36zcMY6E1QiAReKEBTD4EoTu4sW6oYM1OeIkQJjNLQ9FRPwFEGU6wEqIbWzEASZDjf0ZKz+ZXtm+kr9E/EW4bvcC3QYeqQIvCmeZg6a42+2gqbOOPqEHpKmz7Vw8LZEIydBGi9BFEQATgCm3DHNd9xbwJpgHAOBZkp+edV0IkXrJyo0WgSRg9OKZWwzgzWaDqYI5muMwv+ZIjVAFkWjBADbNL0x8YbqLB2tYR78WwDimJuU2lxYR8RRPB5gAGAZrUsuOWbUOMA4K69VQYyjXPZleubX1Eg9B9ue6d2enCcjskv/n9Oyu+PFyljAyu3T9Q/+q7qLdHN/GXbJuhRR69kybSTi/B/9MHs5R3p3VarXZ3Dw5TWaXBddN0zSdP5wYNUCoQo6aOqrJycM5SkD3fGqrRl4uZ/phjrfnfnr9CHQZRynsr5384/M09EnIo/hUxjGL6nXwVBgRHcAbhUzFdUHIYI2V656d5kmSnz7ZlVMKeKynFU/r7ixPkjzCeAjX7Vh++/rB1Zc/cP+8++nP05uL8tt2u119/9bwD96eIwAv5//7x+nbZ+V4CgQmAFOtHazB98/K6GUwv615Wrw9LX6l1tn4mRr1HnWihxSvDuFyZvlPdUll1d2dnZLDii4rvm7VoInbAiuMwTKlrMwiToZa4Jq1VEFRa0yV6wGstzssN9/NT85+qb7/cMO57DcXxUXI7/Ov35mX/OVLr8NGILSVDs5jUZzTB8DQy7P7XQGAHQ6wkp2+N2+vJnVzRGg96Ss+3v3jMcueXFe33Jezymbjz6Z9R4IPtPxzOTPorfp+d3ZKe/Dyu71kncvlrGSku927x5MkSe6dFwNU5/eSJLn3dLVarVZvHk6S5N5TaMxpmq6e3VfPkWWZaurzh5PJw3nZ2byAGmCdLVULF7vdZrN582ii7rtcLtfP7ydJMrtQB989OU2S0ydOe+l8o+VT8lVePH11meogAzOWN1b32kNeNOt7EG9vcJ3HAUShS/UZeBRW9UlK2Gh86KtIpCjubDIkedVR3eWnSZ4keXKa3WyWy+Xnz59ts2qNPadw3YHKDzcnU57rXpxdnUxvXpTpT1ar1eK/355Mr5/8iwfwYrE4f1ywXxWrnKEF53iwxuZsEa8LphQ+f/7MjtQ0BGCrPS29Y35oGvpWcoTWDR+ReHQIZd2ZPQWtatrfxHsmWQlgHOFlAhioAlCCHK0iwae4RxvxfSF6GQPYQS2UqHbHcd1fvpxeaVzXce67n/5sadfua9rvPmRR8NLwM5hmmpXxWSmK8FIm1+Y/YACbgzWeo40QFLZYLD5//mwbqTxsZWgSMa/rOFK4rpL9uC5lFvDd+ochlzMbl7D+Y+0eUD/iX4AmxdZCzMZTpZBV9PY8XS6Xq2f3k+T+i+22sAIvpsXcbpoun1bTveoxIOgOD029e1L1pOoi6NaXsySZXkDq2vN7STJ5OF+v1y+mGrnNLqzvxDJZz4j9vRqH4eER9Io8r6C7DwHv2e9JPFj9iIQFMDtKutP3+8EOk0IdidJM9SQoqq/C6anYoVktqlPRzseP8yTJnmqbOpq5rxqrEeG6w5ECpWhSSPnEAOCLs2qO6DmKgU9fvj2ZXp/NGQA/fazN9OLBGswlTI+fAXDJMWCvFxxcSh6kgeqw29PLWZKczmanNCJmNgNz3KvR4T4J0yGomj0z+yvVG53hPkk7nV7L338AIIH5xR6/Qh2J0lTHwMJykgmf9fhxFlxy3yAA43ans000++riur98Ob3683e/5Xk813UMfg1WfBspsQRRR3hJkAOMZ1aB5RIAA0TVkcB1c4sDTIa8dQe4uC9xPMyQhL5xXceP5C/hug7Zj+vStgZMw+ApFg5ipyYO0mIlQegca8kOII4Gj5N84iDk+8/Xm81Gcc7b0jPbvXsySZLJw9fQ1NXBagKWTWT19tEkSaYXRrvNsmx3MU2SyaM3sJ3j/OEkSSaP3m0xQc7z3Itl1hziXd3kleFLao6Aa34V38x1Y/4adQ/rTbnHI2EATlMVHac8Huhd4EjMddMy5bLiugTA6jqmd1Vc8PEkT+7vlq93kyS/d467xuz2SZ4kpZ7mZTQH+hH4KkwOG0ee3RUx0kmSJ7M8L4lupbOiTDPzsuT30/xUuG5nkmUZ6xMrWL7++/XJ9O1TtNh79f3bk+n1v7/ZmgBWAzr/+o/rk+nb/1os0jQlgzWO2d0co1dfIQa+nZkjtylx2FP11+UZIrvK2YVu87iG+IKE1Kvd5yl/uOO5rjlxXoljzBHML85WoIAHJIFADuZ11cEZWvEYBGBi9sngZm3F3Xw3t8ys/vb1AxfX1U4UrluKfxs9GNcFsQEY+w8k3YYNwOqwJdpZkAzWYEDaiCsAGO9nDuM7/UmUYAtUVp9trFXW6/pIEzHM2sRcZcZNrhvAM9z/1M3q2kt2CGGHhXBjw43zzaNJkiTTi12W3WLOmWVZll3MkmTy6A2Myy7mX02SZHpRTCyQ1fwle30DhgOkDFqefDWvsgE9nybJ5PFtcZ+wqVF3hYZNyaqbmQjBV7FzXfa1swvMorjuUQQxm5MGPgAGtgnuDtvH4ImFxWKBJxbwCCvuftSWAzqAb7JJkt87XywW66/+kCf3dnDfi5nGOS9n+dldQVNRtHw+uyw4LYDi7LSkryUrLudbKqZK53XvNBJ7OasI8wyRYXVB4bodSZZl2c2PxCcGAF//7VpN0lbDJf/Q1geqGSTwkNI0hVMWiwVec+4PYHIkaTgt1IHLnpafKg+3SFpQda5HYfdiRK8Y+1ht9ZXluu4pOZsFNodLYBWuzQKrNSaY0OI15yQfGyYeLIBJPrYgAMdyXTSpmxvrdZ1noX9/+/rB1cmDn258CjoQ8Q+9ODDXha6f/MiO98Ewjc1/UKONwFGXyyVE1hAAk5F34gDDJDA4wGuUf6GhR29G9snDLMzWJg3kYebSXxjNkOO6gZO6BY1h+l9Lqg3PREf7C9stZXooBW6ZqFNRKaGm1QopM+HT/edAFRSbVVw3Q8tmFkVCq3vnaM0DWfkwfzhJkj98Na/C7S6mdB0RxxB5cTFE/zl0vNrE8vSO69heu1aO/Vi7usToXT4318XDsXhYFPcWjisDFFVXBOtyM7S/KEkcygD49cM8SbLzhRrTyZMkf6Hcu9v8FNFXEDaEuCK3Ssrp3OoD/FOSWMJ1MbnN84L6zi6ZUGeJYT6gMABGXBe7WavVSk3SntsA/MPNCfKtCddN0V7QmbH3mwvABtFtOe2ny56CzStc3LtyhtfIuNF63zkw0TsEre/AX0x6y/Szjp6J+A+EJ2B/vZZtqvWQYIGX5fYtGVpmQgBsopdY6bh4hDiuaz+r5L38iaPPTRUQetHJvC7rAAOA8aiKG0iY66ZoFUmmL6RyA5gM6ATFIxxe3OTWJ5hZxJQm5nWraTkyOWhNQpTnuVdSKust69fxWkt2WAFGikezoJ2/mCa0yFpSqMtpkiT3nwHXXb6uYpjh4qipF6mtlsulOhLk3vminPSt3DvG99FTaeiTpMYcqSshpY/d1PMqhHPd+sN8ugPHkxwJ03VKZtl3FA/HkuPxZ8hBRTwtOAD3VZgnQLSCks3DSZ5MstdqGPgmP03y2UWe29bTGtw1zyteyvxiHA+XJdc3Gaz6hbJo4bpdSxHrWMxfYQArrvuUc3eUiwZpbMDA4qlgEuGJaYADwGQeo303y4vrKpY7m51alv5U5/kOgo5atA6BDuma0+b4LMJ1T0/9upYMBQ+TiDA8nYuPJ1/VKhIwvxACqgTsMwtgdhCHva+PRHHdmrRVN9/NXXmY0Yk3383HFcNc49zQ7MxYUGN3HtGAZCjqHltFDCRyPP4KbBYAjHcyz9CGDibRdQO4nyxXCVlqawYks5HJEsDslr24rtHazJS45dDwbEbm+uwttZageCS6cpesBWHDNkjMBh7N2m63KnIYl+lipnHd3e7ifrletxiOevNooj869eTO7yXJH1Q6KzAQxbnP7ifJ5PG7qpHjSDZjbbPHOGDc28NXcK8S9o6Ejgh49zjZb1p4LGICOEMLZngAc7PBpB8y80CQvs1cBgbdUlqt0plnk0RfOqsvqfXnuvQiFq4Lv5hc17yCcN0eCDW/73760/Tq3/6HiXO7/tv1yfTmheGsA4CVA/3Xmyru4J+KHhu7OOZGKB0BsNlqDjaZ4LCn6C9zrY9r3PBozCEnpAaY7e2Ur3N2ZiER+kJo2gGa/gPwBOy7p/Yt1kwLbC5QhNQ+IOxQZhsAjuC6dipbinUVrkmSxxbG7L8w7zDzujYAm9M8sErWfQWc3hKQr9IlmLcwg5mpA+wRhtYTiSCojqW8exdnJLIX1zV7RmtfSdtS5KRunudeM7sBJWtGWKpAeAJurmpxriqQQT7L0dybx5MyEbM6d3PzWNF8M0SksClPq5ldCOEoVi+Uma/KAhbVeHtLU1P57ijEHeFZzbZ5fmtuKqe4wRQ3r3ts69VYALMLutj0UebVIMA+RaGbOP6TANhcCVwB+O2jPEnyx++qs2zzroV4zuvaj/ef11UiXLdroQBWXPcfGk9QAJ7//VrtOWS7lHLKnyMA/7OcCgZXCe6lPuAlYQyAy/Vjh3SzanNTMeG2LvN9yPSOPZTaDsEnZSazaQD8w46Vk0FAHD/sLm6GVohgd58kus+NJSoEwCoE1BFr6g/pcK5bvxdR/sON57xurtJBj4jr9i03lQlgNqPBythLnAUV2ceBjJVbHeDS2k+Kkb0AAAWESURBVBPz2wiADyZBBBVP9u5zndFLs/O6ttbH7gAUPS3okZ3Ku2QNitn8zI6qaK7vNKJbNbbLWZLMLsBzenYf9hwqbMQ7jesSe7Hb7RQ7fnyzAVHjZ7vdTmWgMmOuisxUfgMR9GTyq18t22YILtnyua/lvqsP8+Zuc2xEV4kJJ7yFnc3TMnGIR3NJ9KbpaZGzNoZst9vdxTRPTvNb3CddalOyxtp+Pg2ylX96r9c1OS05vv5eIq0IRdTNj3+aXv3l+5UJ4Nd/v8Y+twHF3/764OrkwY9zBGAV9vysDJ+zmV8WwDi382GqohC7PbWaVpfBPGh+x56JT4cQznX1oGjiP2RoVraWKphQVMEyeJrLHGr0ATDyH/YFcCjXrZ/UDduztybb8wDFdwLn8FyXJat4wMUHwNWecOAA60ONoQC2FXu/525ezHBlz7DkoCxWxyZ7rtfV+wBL02ODqQImdYsckeYt785O0cE6hfIqWTtittXlstoOdP32ERnNhXaYZRfTJEmmL9brdbHi9t55ilZ5qdlgNK/rqgFTcC0YG/U4Fs5aLsWmNK6rZVcZbeXL9dfpeOjLmeUc7rvlSY6T6GLJ9LQltVwXM1gzO6IaXmW3evctEMsbIe+x2igIp486u8svZ/V5mOFg+jumvuQvg0UXV9YnjVWRhOt2JFmWbd/8+Kfp1V9eFrsyAoBXqxXmulmWZdlvf31wrVzqLMve/uf1yfTqL99rAFbrdZ+j8LkOuGuwWO1pPdfVbWx+4B60X+LZIcRwXdvV8X5XGMAm1yVOf8alV1iiVeLsWYeRQK7LT+penKGIZT2NnPv0i7PxpaeiOU/Kn7gV9wfMTeVwgM24MAzFjJuh1RxgC+xHI7bdhsgx7ivUHnOcsn8eZrzCnSZkQOtUKgmf1CWL6CnP4W7vKFnzQppchjMkl2tdoNGun99nlvKcnt0WZz2/Bz9OHs5hnYxKY2U8rLsGTEF1YoYt8+9LF3OVUhBH5hMiVGfZymddCZ5YUWc8CPEqLE/CL8Mat5dHAMzuRFcB2FhzCxfBccsgjlP8hA1Izgs2e4k+k11wtd1xYdKVrNpFew6dnla/m/HMtv112e18z+5kXveQogH4hxsyCv7Hv/2fguL5Yz4168UZ/vH67LpCr+2UgQhvT33mdamhPtrRP98OIZLrljVd/ZbpQWELfXdc4vRjYWfD3KccRvT2hRuRkS25jDG2TeqqFFOg9lxTZh5mSzLnwQttqYf3VWwO8BKlXMbOALuaw5wKrj1llOLYcMj2C/lXiC4rDew5JJIb40yw+S3sTZcaiSVw0zVX4af93gFMZGRCAAzJw8lWQzbPiThnZDKh9wC20GmR4QiZ3VIxnCyATc8pM3IrmADu6LFEjkUIgJX/oIIw8c5ANgCbOdiWre/hLCJSCesAKwB7OsDmMI04wJ4xzJJ1uVaE6zYmZtNVlCBD2zCmRj7DjNsgXtwskcMLC+C8dKRMACv02jaIH5SbJVx3DIKRphiCStqJt2FM9e2yzHA7DGA2WaiISBtihiJD1PFutzNHG8F/cAN4COZXZAxijjYCSpUDTAINfBxgAbB7Xlcorr8I142XDAnJ34B/yY2EitAP4TkH0kUd+WiWyAHEB8DqSDzrhfshmHMg3Rgeyun0ET1FuO7wxESvDcCZnpOWANgcphkggEWGJz4Ahs/ET4DM3iaA4S8BsEir4vAf8jzHDnCWZTaUYssMvjEGcKePKDIeEa4bIzCdBZ3NqhR2YYw5dgWZ0PGqfdu+eSIizQoGsPKi8N4SLIA3+iai6mD1CwGw9E8irQp4VyyAyQaMSsxcKSaAj21hmEhXAtzA9B9sqQ3IcDkGcIoSBwqARQ4gbgeYBbAt+Mvc/1korkgb8v8K413TDpUgGQAAAABJRU5ErkJggg==" alt="" width="682" height="30" />

 #include <map>
#include <set>
#include <stack>
#include <queue>
#include <cmath>
#include <ctime>
#include <vector>
#include <cstdio>
#include <cctype>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <algorithm>
using namespace std;
#define eps 1e-15
#define MAXN 125
#define INF 1000000007
#define MAX(a,b) (a > b ? a : b)
#define MIN(a,b) (a < b ? a : b)
#define mem(a) memset(a,0,sizeof(a)) bool G[MAXN][MAXN],vis[MAXN];
int Left[MAXN],N,M,T; bool DFS(int u)
{
for(int v=;v<=N;v++) if(G[u][v] && !vis[v])
{
vis[v] = true;
if(!Left[v] || DFS(Left[v]))
{
Left[v] = u;
return true;
}
}
return false;
} int main()
{
while(~scanf("%d", &T))while(T--)
{
mem(G); mem(Left);
scanf("%d%d", &N, &M);
int x,y;
for(int i=;i<M;i++)
{
scanf("%d%d",&x, &y);
G[x][y] = true;
}
int ans = ;
for(int i=;i<=N;i++)
{
mem(vis);
if(DFS(i)) ans ++;
}
printf("%d\n", N-ans);
}
return ;
}

HDU1151Air Raid(二分图的最大匹配)的更多相关文章

  1. hdu3729 I'm Telling the Truth (二分图的最大匹配)

    http://acm.hdu.edu.cn/showproblem.php?pid=3729 I'm Telling the Truth Time Limit: 2000/1000 MS (Java/ ...

  2. POJ 2584 T-Shirt Gumbo (二分图多重最大匹配)

    题意 现在要将5种型号的衣服分发给n个参赛者,然后给出每个参赛者所需要的衣服的尺码的大小范围,在该尺码范围内的衣服该选手可以接受,再给出这5种型号衣服各自的数量,问是否存在一种分配方案使得每个选手都能 ...

  3. HDU 2444 The Accomodation of Students(二分图判定+最大匹配)

    这是一个基础的二分图,题意比较好理解,给出n个人,其中有m对互不了解的人,先让我们判断能不能把这n对分成两部分,这就用到的二分图的判断方法了,二分图是没有由奇数条边构成环的图,这里用bfs染色法就可以 ...

  4. 二分图的最大匹配——最大流EK算法

    序: 既然是个图,并且求边数的最大值.那么这就可以转化为网络流的求最大流问题. 只需要将源点与其中一子集的所有节点相连,汇点与另一子集的所有节点相连,将所有弧的流量限制置为1,那么最大流 == 最大匹 ...

  5. HDU 2389 Rain on your Parade / HUST 1164 4 Rain on your Parade(二分图的最大匹配)

    HDU 2389 Rain on your Parade / HUST 1164 4 Rain on your Parade(二分图的最大匹配) Description You're giving a ...

  6. CF 277.5 B.BerSU Ball 二分图的最大匹配 模版题

    题意:求二分图的最大匹配数量 模版如下: //二分图匹配(匈牙利算法的DFS实现) //初始化:g[][]两边顶点的划分情况 //建立g[i][j]表示i->j的有向边就可以了,是左边向右边的匹 ...

  7. 2015编程之美 初赛第一场C题 质数相关 二分图的最大匹配

    质数相关 Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://hihocoder.com/contest/msbop2015round2a/prob ...

  8. 算法笔记_137:二分图的最大匹配(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 何为二分图的最大匹配问题? 引用自百度百科: 首先得说明一下何为匹配: 给定一个二分图G,在G的一个子图M中,M的边集{E}中的任意两条边都不依附于 ...

  9. poj 1274(网络流解二分图的最大匹配)

    The Perfect Stall Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 22539   Accepted: 100 ...

随机推荐

  1. ASP.NET 时间方法大全

    DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays(- Convert.ToInt32(dt.DayOfWeek.To ...

  2. STM32-F0/F1/F2

    用到的资源是:A.ST公司提供:STM32F10x开发标准库V3.5B.实验平台:战舰开发板V2.1C.编译软件:MDK3.8D.编辑软件:Source Insight_V3.5E.RTOS:ucos ...

  3. wx菜单栏

    #include "MainFrame.h" BEGIN_EVENT_TABLE(MyFrame,wxFrame) EVT_MENU(wxID_FILE,MyFrame::OnMe ...

  4. IP碎片原理:攻击和防护

    为了加深理解IP协议和一些DoS攻击手段大家有必要看看以下内容,也许对你理解这个概念有所帮助.先来看看IP碎片是如何产生的吧.         一.IP碎片是如何产生的       链路层具有最大传输 ...

  5. 【转】itunes connect 如何修改主要语言

    原文网址:http://blog.csdn.net/yuedong56/article/details/50662181 刚开始提交app,没有做国际化(本地化),提交的app只有简体中文一种语言,第 ...

  6. C#隐式运行CMD命令(隐藏命令窗口)

    原文 C#隐式运行CMD命令(隐藏命令窗口) 本文实现了C#隐式运行CMD命令的功能.下图是实例程序的主画面.在命令文本框输入DOS命令,点击"Run"按钮,在下面的文本框中输出运 ...

  7. HDU5808Price List Strike Back (BestCoder Round #86 E) cdq分治+背包

    严格按题解写,看能不能形成sum,只需要分割当前sum怎么由两边组成就好 #include <cstdio> #include <cstring> #include <c ...

  8. 我常用的VBS方法(QTP)

    这些是4年前在HP用QTP做自动化测试时候总结的一些,现在贴出来,说不准以后会不会用到 当初花了2天时间写的一个自动生成的Excel Report Public Function Report (st ...

  9. 提高CSS开发能力的技巧集

    1. 使用:not()给导航条添加间隔线 我们通常使用如下代码给导航条增加间隔线 /* add border */ .nav li { border-right: 1px solid #666; } ...

  10. 2016年JavaScript技术栈展望

    如果你正在筹划新的前端项目或者重构现有项目,那么你需要认识到现在的前端开发环境已经今非昔比,这其中有太多的选择了:React.Flux.Angular.Aurelia.Mocha.Jasmine.Ba ...