독특한 차이점
2676 단어 perlpythontheweeklychallenge
주간 도전 183
Challenge , My solutions
잠시 휴식 후 돌아왔습니다 :)
작업 1: 고유한 어레이
일
arrayrefs 목록이 제공됩니다.
주어진 목록에서 중복된 arrayrefs를 제거하는 스크립트를 작성하십시오.
내 솔루션
Python 및 Perl 솔루션의 논리는 기본적으로 동일합니다. 외부 목록의 각 항목에 대해 목록의 이전 항목에 표시되었는지 확인합니다. Python에서 두 목록을 비교하는 것은 예상대로 작동합니다. 나는 Perl에서 이것을 할 수 있는 방법이 있다고 믿지 않기 때문에 두 배열이 같은지 확인하기 위해
same_array
라는 함수를 작성했습니다.예
$ ./ch-1.py "[[1,2], [3,4], [5,6], [1,2]]"
[1, 2], [3, 4], [5, 6]
$ ./ch-1.py "[[9,1], [3,7], [2,5], [2,5]]"
[9, 1], [3, 7], [2, 5]
작업 2: 날짜 차이
일
$date1
형식의 $date2
및 YYYY-MM-DD
두 날짜가 제공됩니다.주어진 날짜 사이의 차이를 연도와 날짜로만 구하는 스크립트를 작성하십시오.
내 솔루션
이것은 약간 까다 롭습니다. 데이트 수학은 결코 재미있지 않습니다. 그래서 방망이에서 이것이 시간대를 인식하지 않는다는 점에 유의하겠습니다. 그것은 실제로 2011년 12월에 skipped a day 소수의 국가에만 문제가 될 것입니다.
기본 논리는 다음과 같습니다.
date2
가 date1
보다 늦은지 확인하십시오. 챌린지는 날짜가 지정된 순서를 언급하지 않습니다. years
로 저장합니다. years
값에서 1을 뺍니다. date2 - $years year(s)
와 date1
사이의 일수를 계산합니다. Python의 경우 dateutils 모듈을 사용하여 이 작업을 수행합니다. Perl에서는 Date::Calc 모듈을 사용합니다. 예
$ ./ch-2.py 2019-02-10 2022-11-01
3 years 264 days
$ ./ch-2.py 2020-09-15 2022-03-29
1 year 195 days
$ ./ch-2.py 2019-12-31 2020-01-01
1 day
$ ./ch-2.py 2019-12-31 2019-12-01
30 days
Reference
이 문제에 관하여(독특한 차이점), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/simongreennet/unique-differences-1cci텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)