美文网首页
华为OD机试真题2023_Swift_100_分界线

华为OD机试真题2023_Swift_100_分界线

作者: 雾中探雪 | 来源:发表于2023-03-03 00:23 被阅读0次

    解题思路
    1、对报纸字符串和匿名字符串使用空格分隔
    2、对分隔后得到两个数组分别对其自己的每个元素进行排序
    3、对匿名数组进行遍历,如果匿名数组的元素都包含在报纸数组中,则表示可以拼成功,反之不可以

    // 分界线
        func HW2023008() {
            // 测试用例
    //        let line1 = "ab cd", line2 = "ab"
    //        let line1 = "ab ef", line2 = "aef"
    //        let line1 = "ab bcd ef", line2 = "cbd fe"
    //        let line1 = "ab bcd ef", line2 = "cd fe"
            // 开始代码
            let line1 = String(readLine()!)
            let line2 = String(readLine()!)
            // 将字符串使用空格拆分成数组
            var newsArr = line1.components(separatedBy: " ")
            var anonyArr = line2.components(separatedBy: " ")
            // 对数组中的每个元素进行字符排序
            newsArr = newsArr.map { String($0.sorted()) }
            anonyArr = anonyArr.map { String($0.sorted()) }
            var res = false
            // 对匿名数组anonyArr进行遍历
            for i in anonyArr {
                // 如果匿名数组anonyArr中的元素全部都在报纸数组中包含则给将结果置为true,反之false
                if newsArr.contains(i) {
                    res = true
                }else {
                    res = false
                    break
                }
            }
            print(res ? "true" : "false")
        }
    

    相关文章

      网友评论

          本文标题:华为OD机试真题2023_Swift_100_分界线

          本文链接:https://www.haomeiwen.com/subject/xcfdldtx.html