ABC207 C - Many Segments에서 배운
7218 단어 AtCoder파이썬AtCoderBeginnerContest
여유가 아니야?
아니, 여유롭게 WA.
부끄러운 착각
구간을 미만으로 했을 경우, 값 그 자체를 깎았다.
yarakashita.py
for _ in range(N):
t,l,r = map(int,input().split())
if t == 1:
lis.append([l,r])
elif t == 2:
lis.append([l,r-1])
elif t == 3:
lis.append([l+1,r])
else:
lis.append([l+1,r-1])
하지만, 문제문에는 이하의 기재가 있다.
i 이상 j 이하의 실수로 이루어지는 구간에 공통 부분을 가지는 것과 같은 것이 몇 개 있습니까?
흠.
실수는 무엇! ?
과연, 우선 소수도 존재하는 영역인가.
그럼, -1 하면 안 되네요, 0.1 정도일까.
ManySegments_r0.py
N = int(input())
lis = []
for _ in range(N):
t,l,r = map(int,input().split())
if t == 1:
lis.append([l,r])
elif t == 2:
lis.append([l,r-0.1])
elif t == 3:
lis.append([l+0.1,r])
else:
lis.append([l+0.1,r-0.1])
ans = 0
for i in range(N-1):
for j in range(i+1,N):
if lis[i][1] < lis[j][0] or lis[j][1] < lis[i][0]:
continue
else:
ans += 1
print(ans)
문제 문장에 솔직하게 2<= N <= 2000 과 계산량이 적은
문제는, 상사, 방단금물인 것 같다.
Reference
이 문제에 관하여(ABC207 C - Many Segments에서 배운), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/AKpirion/items/931fcdcf07792140dc37텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)