算出k的开始位置和结束位置,用一个列表来表示,然后在用输入的n列去和列表中的元素判断,确定在哪一个位置

def start(n):
    end = [1]
    # 第一个序列为第一项
    for i in range(n):                    # 循环输入的n次
        end.append(end[i] + i + 2)     # 每循环一次算出下一个的元素(k结束的列),供下次比较
        if n <= end[i]:                
            if i == 0:                # 特殊情况
                return 1
            return end[i] - end[i-1] # 当前元素减去上一个元素的差就是k列对应的数

# 测试代码
if __name__=='__main__':
    num = int(input())
    print(start(num))