>웹 프론트엔드 >JS 튜토리얼 >JavaScript FAQ 흑백 카드

JavaScript FAQ 흑백 카드

巴扎黑
巴扎黑원래의
2017-07-20 14:15:431314검색
문제 설명:

시간 제한: 1초

공간 제한: 32768K

Niu Niu에는 n개의 카드가 순서대로 배열되어 있습니다. 흰색의. 초기 상태에서는 일부 카드는 검정색이 위로 향하고 일부 카드는 흰색이 위로 향합니다. Niu Niu는 이제 일부 카드를 뒤집어 교대로 배열하기를 원합니다. 즉, 인접한 카드 쌍의 색상이 서로 다릅니다. Niu Niu는 교대 배열을 형성하기 위해 뒤집어야 하는 최소 카드 수를 알고 싶어합니다.
입력 설명:
输入包括一个字符串S,字符串长度length(3 ≤ length ≤ 50),其中只包含'W'和'B'两种字符串,分别表示白色和黑色。整个字符串表示卡片序列的初始状态。
출력 설명:
输出一个整数,表示牛牛最多需要翻转的次数。
입력 예 1:
BBBW
출력 예 1:
1

솔루션 아이디어:

// 흰색 변경 짝수에 위치는 검정색, 홀수 위치의 검정색은 흰색이 됩니다
// 홀수 위치의 흰색을 검정색으로, 짝수 위치의 검정색을 흰색으로 변경합니다

소스 코드:

 1 (function main(){ 2     var line = readline().split(' '); 3     var count_1; 4     var count_2; 5     var arr=line[0]; 6     count_1=Turnover(arr,'B','W'); 7     count_2=Turnover(arr,'W','B'); 8     if (count_1<count_2) { 9         print(count_1);10     }else{11         print(count_2);12     }13 })();14 function  Turnover(str,card1,card2){15     var count=0;16     for(var i=0;i<str.length;i++){17         if(i%2==0&&str[i]!=card1){18             str[i]=card1;19             count++;20         }else if(i%2==1&&str[i]!=card2){21             str[i]=card2;22             count++;23         }24     }25     return count;26 }
카드

위 내용은 JavaScript FAQ 흑백 카드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.