广联达笔试复盘
本彩笔0AC,就两题的思路写了下,本地测试了几个没毛病,但都没通过,想请大佬帮忙看看哪里错了给点做题的建议也行
第一题
// let str1='WASDWWSAD' // let str2='WASSWWAAD' var str1=read_line().trim() var str2=read_line().trim() function fn(str1,str2){ let score=0 let len=str1.length if(len===0) return 0 for(let i=0;i<len;i++){ if(str1[i]===str2[i]){ score+=20 } if(str1[i]!==str2[i] && score>=10){ score-=10 } } return score } console.log(fn(str1,str2))第二题
// let arr=read_line().split(' ').map(Number) let arr=[1,2,2,3] function fn(arr){ if(arr[0]==arr[1] && arr[1]==arr[2] && arr[2]==arr[3]){ return arr[0]*4 } if(!(arr[0]==arr[1] && arr[1]==arr[2] && arr[2]==arr[3]) &&(arr[0]<=0 || arr[1]<=0 || arr[2]<=0 || arr[3]<=0)){ return -1 } if(!(arr[0]==arr[1] && arr[1]==arr[2] && arr[2]==arr[3]) &&(arr[0]>0 && arr[1]>0 && arr[2]>0 && arr[3]>0)){ let Max=Math.max(...arr) let Min=Math.min(...arr) let i=arr.indexOf(Max) let j=arr.indexOf(Min) arr[i]=Max-2 arr[j]=Min+1 console.log(arr) return fn(arr) } } console.log(fn(arr))