一本通 1263:【例9.7】友好城市(数据较弱)

友好城市

对北岸(或南岸)的城市从小到大排序,再求南岸(或北岸)的城市位置的最长不下降序列长度即可。

ps:这里数据较弱,用n*n的做法可以过。


Code:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
//Mystery_Sky
//
#define M 1000100
struct node{
    int N, S;
}city[M];
int f[M], n, ans;

inline bool cmp(node a, node b)
{
    return a.N < b.N;
}

int main() {
    scanf("%d", &n);
    for(int i = 1; i <= n; i++) scanf("%d%d", &city[i].N, &city[i].S), f[i] = 1;
    sort(city+1, city+1+n, cmp);
    for(int i = 1; i <= n; i++) {
        for(int j = 1; j <= i; j++) {
            if(city[j].S < city[i].S) f[i] = max(f[i], f[j]+1);
        }
    }
    for(int i = 1; i <= n; i++) ans = max(ans, f[i]);
    printf("%d\n", ans);
    return 0;
}

原文地址:https://www.cnblogs.com/Benjamin-cpp/p/10994943.html

时间: 2024-10-10 13:45:56

一本通 1263:【例9.7】友好城市(数据较弱)的相关文章

【Noip模拟 20161005】友好城市

问题描述 小ww生活在美丽的ZZ国.ZZ国是一个有nn个城市的大国,城市之间有mm条单向公路(连 接城市ii.jj的公路只能从ii连到jj).城市ii.jj是友好城市当且仅当从城市ii能到达城市jj并 且从城市jj能到达城市ii.如果kk个城市两两互为友好城市,那么我们称这kk个城市是友好 城市群,kk为友好城市群的大小.现在小ww想知道友好城市群的大小最大为多少,你能告诉 他吗? 输入格式 第一行包含两个整数nn 和mm. 接下来mm 行,每行两个整数ii和jj,表示有从城市ii到城市jj的一

【dp】友好城市

题目一: [题目描述] Palmia国有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市.北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同. 每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故.编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航线不相交的情况下,被批准的申请尽量多. [输入] 第1行,一个整数N(1≤N≤5000),表示城市数. 第2行到第n+1行,每行两

1012. 友好城市

Palmia国有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市. 北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同. 每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故. 编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航线不相交的情况下,被批准的申请尽量多. 输入格式 第1行,一个整数N,表示城市数. 第2行到第n+1行,每行两个整数,中间用1个空格隔开,分别表示南岸

洛谷P2782 友好城市

题目描述 有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市.北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同.没对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故.编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航道不相交的情况下,被批准的申请尽量多. 输入输出格式 输入格式: 第1行,一个整数N(1<=N<=5000),表示城市数. 第2行到第n+1行,每行两个整数,

洛谷 2782友好城市

题目背景 无 题目描述 有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市.北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同.没对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故.编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航道不相交的情况下,被批准的申请尽量多. 输入输出格式 输入格式: 第1行,一个整数N(1<=N<=5000),表示城市数. 第2行到第n+1行,

P2782 友好城市

题目背景 无 题目描述 有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市.北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同.没对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故.编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航道不相交的情况下,被批准的申请尽量多. 输入输出格式 输入格式: 第1行,一个整数N(1<=N<=5000),表示城市数. 第2行到第n+1行,

洛谷 P2782 友好城市

P2782 友好城市 题目描述 有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市.北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同.每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故.编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航道不相交的情况下,被批准的申请尽量多. 输入输出格式 输入格式: 第1行,一个整数N,表示城市数. 第2行到第n+1行,每行两个整数,中间

2019城市数据分析师教程 智慧城市数据分析视频教程

┣━━51实践专题一_城市空间数据的视觉表达 [298.6M] ┃    ┣━━51.1数据工作流及软件须知.mp4 [57M] ┃    ┣━━51.23D_Bar立体动态图表展现.mp4 [40.6M] ┃    ┣━━51.33D_City_Map城市综合地图.mp4 [38.6M] ┃    ┣━━51.4Global球面飞线轨迹模拟.mp4 [36.3M] ┃    ┣━━51.52D_Route_Map城市动态轨迹模拟.mp4 [56.6M] ┃    ┗━━51.63d_Bar_M

友好城市

DP_LIS 题目描述 有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市.北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同.每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故.编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航道不相交的情况下,被批准的申请尽量多. 输入输出格式 输入格式: 第1行,一个整数N,表示城市数. 第2行到第n+1行,每行两个整数,中间用一个空