提出 #72197239


ソースコード 拡げる

import sys

try:
    sys.stdin = open("input.txt", "r")
    sys.stdout = open("output.txt", "w")
except FileNotFoundError:
    pass

import math
from collections import Counter
from collections import defaultdict as dd, deque
from bisect import bisect_left as bl , bisect_right as br
from heapq import heappush, heappop
from math import gcd, floor, ceil, log2, sqrt , isqrt
from functools import lru_cache
from itertools import groupby as gb

from sortedcontainers import SortedList, SortedSet,SortedDict



sys.setrecursionlimit(1000000)

MOD = 10**9 + 7

N = 10**6 + 5
sieve = [1] * (N)
sieve[0] = sieve[1] = 0
fac = [1 for i in range(N)]
ifac = [1 for i in range(N)]
primes = []

def soe():
    for i in range(2, N):
        if sieve[i] == 1:  
            for j in range(i*i, N, i):
                sieve[j] = 0

    for i in range(N):
        if sieve[i]:
            primes.append(i)

def compute_factorials():
    for i in range(1, N):
        fac[i] = fac[i-1] * i % MOD


    ifac[-1] = pow(fac[-1], MOD - 2, MOD) 

    for i in range(N-2, -1, -1):
        ifac[i] = ifac[i+1] * (i+1) % MOD

def factorize(x):
    factors = []
    while x != 1:
        factors.append(spf[x])
        x //= spf[x]
    return factors

def is_prime(x):
    return x > 1 and sieve[x] == 0

def comb(n , r):
    return fac[n] * ifac[r] % MOD * ifac[n - r] % MOD

def perm(n  ,r):
    return fac[n] * ifac[n - r] % MOD


input = sys.stdin.readline

take_int = lambda: int(input())
take_line = lambda: map(int, input().split())
take_list = lambda: list(map(int, input().split()))
take_string = lambda: list(input().strip().split())
print_list = lambda x: print(*x)


def solve(): 
    n = take_int()

    arr = []
    for _ in range(n):
        a , b = take_line()
        arr.append((a , b))

    arr.sort(key=lambda x: (x[0], -x[1]))

    res = []
    for a , b in arr:
        idx = bl(res, b)
        if idx == len(res):
            res.append(b)
        else:
            res[idx] = b
    
    print(len(res))


solve()

# t = take_int()
# for _ in range(t):
#     solve()

提出情報

提出日時
問題 E - Kite
ユーザ Maddy_22
言語 Python (PyPy 3.11-v7.3.20)
得点 450
コード長 2170 Byte
結果 AC
実行時間 527 ms
メモリ 165596 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 450 / 450
結果
AC × 3
AC × 24
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_1_00.txt, 01_random_1_01.txt, 01_random_1_02.txt, 01_random_1_03.txt, 01_random_1_04.txt, 01_random_1_05.txt, 02_random_2_00.txt, 02_random_2_01.txt, 02_random_2_02.txt, 02_random_2_03.txt, 02_random_2_04.txt, 02_random_2_05.txt, 03_sorted_00.txt, 03_sorted_01.txt, 03_sorted_02.txt, 03_sorted_03.txt, 03_sorted_04.txt, 03_sorted_05.txt, 04_same_coord_00.txt, 04_same_coord_01.txt, 04_same_coord_02.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 158 ms 135500 KiB
00_sample_01.txt AC 157 ms 134964 KiB
00_sample_02.txt AC 158 ms 135560 KiB
01_random_1_00.txt AC 370 ms 151092 KiB
01_random_1_01.txt AC 526 ms 158132 KiB
01_random_1_02.txt AC 461 ms 153292 KiB
01_random_1_03.txt AC 527 ms 158116 KiB
01_random_1_04.txt AC 520 ms 158360 KiB
01_random_1_05.txt AC 522 ms 158060 KiB
02_random_2_00.txt AC 515 ms 162936 KiB
02_random_2_01.txt AC 517 ms 161516 KiB
02_random_2_02.txt AC 517 ms 161036 KiB
02_random_2_03.txt AC 517 ms 160724 KiB
02_random_2_04.txt AC 514 ms 159788 KiB
02_random_2_05.txt AC 519 ms 158532 KiB
03_sorted_00.txt AC 512 ms 165596 KiB
03_sorted_01.txt AC 504 ms 158324 KiB
03_sorted_02.txt AC 518 ms 164808 KiB
03_sorted_03.txt AC 518 ms 165376 KiB
03_sorted_04.txt AC 507 ms 157924 KiB
03_sorted_05.txt AC 521 ms 165432 KiB
04_same_coord_00.txt AC 526 ms 157864 KiB
04_same_coord_01.txt AC 499 ms 157872 KiB
04_same_coord_02.txt AC 219 ms 149824 KiB