입력:
비어 있지 않은 목록 / 벡터로 각 요소에 값 / 문자가 포함 되어 카운트 업 또는 다운 여부를 나타냅니다 . 내가 사용합니다 1
및 -1
,하지만 당신은 당신이 원하는대로 선택할 수 있습니다. 당신은 당신이 사용할 수 없습니다,이 개 값을 사용할 수 있습니다 1,2,3...
및 -1,-2,-3...
최대를 위해 아래로 각각.
도전:
기하학적 시리즈 1, 2, 4, 8, 16, 32 ... 의 숫자를 사용합니다 . 카운트 업 또는 카운트 다운을 시작할 때마다 1 , 2 , 4 등 으로 증가 합니다. 다른 방법으로 변경하고 계산을 시작하면 1 , 2 , 4 등 을 뺍니다 . 결과는 당신이 마지막에 얻는 숫자입니다.
예 :
아래 예에서 첫 번째 줄은 입력이고, 두 번째 줄은 카운트 다운 / 업다운하는 숫자이고, 세 번째 줄은 누적 합계이며, 마지막 줄은 출력입니다.
예 1 :
1 1 1 1 1 1 1 1 1 1
1 2 4 8 16 32 64 128 256 512
1 3 7 15 31 63 127 255 511 1023
1023
예 2 :
1 1 1 1 1 1 -1 -1 -1 -1 1 1 1
1 2 4 8 16 32 -1 -2 -4 -8 1 2 4
1 3 7 15 31 63 62 60 56 48 49 51 55
55
보시다시피, 첫 번째 1
또는 -1
"재설정"하고 우리가 세는 값, 그리고 연속적인 값 1
또는 -1
두 배의 값을 의미합니다.
예 3 :
-1 -1 1 1 -1 -1 -1
-1 -2 1 2 -1 -2 -4
-1 -3 -2 0 -1 -3 -7
-7
몇 가지 추가 테스트 사례는 잠재적 인 코너 사례를 설명합니다.
입력은 첫 번째 줄에 있습니다. 출력은 두 번째입니다.
1
1
-------
-1
-1
-------
-1 1 -1 1 -1 1 -1 1 -1 1 -1 1
0
이것은 코드 골프 이므로 각 언어로 가장 짧은 제출이 이깁니다.
®ì2Ãx
하는xì2
2 바이트를 저장합니다.