【每日一题】667. 优美的排列 II

给定两个整数 n 和 k,构造一个包含 1 到 n 的 n 个不同整数的列表,使得列表的子列表中只有 k 个不同整数。返回满足条件的任意一种排列。例如,当 n=3, k=1 时,输出可能为 [1, 2, 3]。" 100684494,5570567,OpenCV使用最小二乘法拟合曲线,"['图像处理', '计算机视觉', 'OpenCV', '数学算法']
摘要由CSDN通过智能技术生成

667. 优美的排列 II

给你两个整数 n 和 k ,请你构造一个答案列表 answer ,该列表应当包含从 1 到 n 的 n 个不同正整数,并同时满足下述条件:

假设该列表是 answer = [a1, a2, a3, ... , an] ,那么列表 [|a1 - a2|, |a2 - a3|, |a3 - a4|, ... , |an-1 - an|] 中应该有且仅有 k 个不同整数。
返回列表 answer 。如果存在多种答案,只需返回其中 任意一种 。

输入:n = 3, k = 1
输出:[1, 2, 3]
解释:[1, 2, 3] 包含 3 个范围在 1-3 的不同整数,并且 [1,1] 中有且仅有 1 个不同整数:1

class Solution {
   
    public int[] constructArray
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是基于uniapp写一个优美的多人聊天页面的示例代码: template: ``` <template> <view class="chat-page"> <view class="chat-window" ref="chatWindow"> <view v-for="(message, index) in messages" :key="index" class="message" :class="{'my-message': message.isMe}"> <view class="avatar"> <image :src="message.avatarUrl" mode="aspectFill"></image> </view> <view class="bubble"> <view class="content">{{ message.content }}</view> <view class="time">{{ message.time }}</view> </view> </view> <view ref="bottom"></view> </view> <view class="input-box"> <input type="text" placeholder="请输入消息" @confirm="sendMessage" v-model="inputValue"></input> <button type="primary" @click="sendMessage">发送</button> </view> </view> </template> ``` script: ``` <script> export default { data() { return { inputValue: '', messages: [ { id: '1', avatarUrl: '/static/avatar1.png', content: '你好啊', time: '2021-01-01 12:00:00', isMe: false }, { id: '2', avatarUrl: '/static/avatar2.png', content: '你好,有什么需要帮忙的吗?', time: '2021-01-01 12:01:00', isMe: true } ] } }, methods: { sendMessage() { if (!this.inputValue) { return; } const message = { id: Math.random().toString(16).slice(2), avatarUrl: '/static/avatar3.png', content: this.inputValue, time: new Date().toLocaleString(), isMe: true } this.messages.push(message); this.inputValue = ''; this.$nextTick(() => { const bottom = this.$refs.bottom; uni.pageScrollTo({ scrollTop: bottom.offsetTop }); }); } } } </script> ``` style: ``` <style> .chat-page { height: 100%; display: flex; flex-direction: column; } .chat-window { flex: 1; overflow-y: scroll; padding: 20rpx; } .message { display: flex; margin-bottom: 20rpx; } .message .avatar { width: 80rpx; height: 80rpx; margin-right: 20rpx; } .message .avatar image { width: 100%; height: 100%; border-radius: 50%; } .message .bubble { flex: 1; background-color: #f5f5f5; border-radius: 20rpx; padding: 20rpx; } .message .content { font-size: 32rpx; } .message .time { font-size: 26rpx; color: #999; margin-top: 10rpx; } .my-message .avatar { margin-left: auto; margin-right: 0; } .my-message .bubble { background-color: #4caf50; color: #fff; } .my-message .time { color: #eee; } .input-box { display: flex; align-items: center; padding: 20rpx; } .input-box input { flex: 1; height: 60rpx; margin-right: 20rpx; border-radius: 30rpx; padding-left: 20rpx; font-size: 32rpx; } .input-box button { width: 180rpx; height: 60rpx; border-radius: 30rpx; font-size: 32rpx; color: #fff; background-color: #4caf50; } </style> ``` 这个示例代码实现了一个简单的多人聊天页面,包括聊天窗口和输入框。在聊天窗口中,可以显示发送和接收的消息,每个消息包括头像、内容和时间。在输入框中,用户可以输入消息并发送,发送后页面会自动滚动到最新的消息。 您可以根据自己的需求修改样式和功能,例如添加用户名、消息类型等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值