저의 경제학 수업에서 친구와 저는 유효한 수학 방정식을 만들기 위해 날짜 (MM / DD / YY) 형식으로 숫자를 재배 열하는 방법을 제안했습니다. 대부분의 경우 연결에 더하기, 빼기, 곱하기, 나누기, 괄호 및 지수를 사용할 수 있습니다.
당신의 프로그램은 비슷한 것을해야합니다. 프로그램은 현재 날짜를 가져오고 연산자를 삽입하여 다음 규칙에 따라 표현식을 인쇄해야합니다.
- 숫자는 반드시 순서대로 사용해야합니다. 자릿수 재 배열은 허용되지 않습니다.
- 결과 표현식은 수학적으로 정확해야합니다.
- 괄호의 덧셈, 뺄셈, 곱셈, 나눗셈, 지수화 및 사용이 허용됩니다. 숫자의 연결도 마찬가지입니다. 그러나 모든 작업이 필요한 것은 아닙니다. 빼기 부호를 사용하여 숫자를 음수로 만들 수 없습니다 (예
-1+1+11=10
: 2010 년 11 월 11 일). - 프로그램은 표준 시스템에서 60 초 안에 실행되어야합니다.
예를 들어,이 과제는 2015 년 11 월 10 일에 작성되었습니다. 프로그램은이를 15/11/15로 해석합니다. 샘플 출력은입니다 (1+1)/10=1/5
.
보너스
프로그램에서 지원하는 다음 중 하나에 대해 코드의 바이트 수에 0.9를 곱할 수 있습니다.
- 프로그램은 줄 바꿈으로 구분하여 구성 할 수있는 모든 가능한 표현식을 인쇄 합니다 . 표현식이 추가 기호 순서로 나열되는 경우 추가 0.95를 곱하십시오.
- 이 프로그램은 또한 MM / DD / YYYY 날짜에서도 작동하며 연도의 첫 두 자리 숫자와 함께 가능성을 인쇄합니다. 이 보너스가 첫 번째 보너스와 결합 된 경우 연도의 첫 두 자리 숫자가있는 모든 가능성을 인쇄해야합니다.
- 이 프로그램은 또한 여러 등식이있는 경우에 대한 방정식을 인쇄합니다 (예 : 2011 년 11 월 11 일 에 , 및 . 와
1=1=1=1=1=1
같은 가능성과 함께 인쇄 될 수 있습니다. 첫 번째 보너스를 받으려면 이러한 모든 경우를 인쇄해야합니다.1*1=1=1=1=1
1*1*1=1=1=1
1*1*1*1=1=1
- 이 프로그램은 2와 16 사이의 기수로의 변환을 지원합니다. 기수가 10이 아닌 경우 식의 모든 숫자는 같은 기수
(Base b)
로 작성되어야하며 식 뒤에 쓰여 져야합니다 (b
따라서 대체 됨).
이것은 코드 골프이므로 표준 규칙이 적용됩니다. 바이트 단위의 최단 코드가 이깁니다.
1
어떤 작업이 허용됩니까?
—
anOKsquirrel
@FryAmTheEggman 이것을 중복이라고 부르기에 충분한 유사성이 있습니까? 나는이 도전이 한 자리만을 사용하지 않고 특정 RHS를 염두에 두지 않기 때문에 그렇게 생각하지 않았습니다 (평등 만).
—
Arcturus
DD / MM / YYYY> MM / DD / YYYY.
—
orlp
나는 당신이 당신의 질문에 표현 을 쓴 곳에서 방정식 을 사용하고 싶다고 생각합니다 (표현은 방정식의 한 측면 일뿐입니다.
—
Paŭlo Ebermann
주어진 날짜에 이것이 가능합니까?
—
Zach Gates