• Codeforces Round #275(Div. 2)-C. Diverse Permutation


    http://codeforces.com/contest/483/problem/C

    C. Diverse Permutation
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    Permutation p is an ordered set of integers p1,   p2,   ...,   pn, consisting of n distinct positive integers not larger than n. We'll denote as nthe length of permutation p1,   p2,   ...,   pn.

    Your task is to find such permutation p of length n, that the group of numbers |p1 - p2|, |p2 - p3|, ..., |pn - 1 - pn| has exactly k distinct elements.

    Input

    The single line of the input contains two space-separated positive integers nk (1 ≤ k < n ≤ 105).

    Output

    Print n integers forming the permutation. If there are multiple answers, print any of them.

    Sample test(s)
    input
    3 2
    output
    1 3 2
    input
    3 1
    output
    1 2 3
    input
    5 2
    output
    1 3 2 4 5
    Note

    By |x| we denote the absolute value of number x.

    解题思路:形如1,n,2,n-1,3,n-2.....这样肯定是最优的,但题目要求你正好有k个不同的,那么可以构造出k-1个不同的之后根据k是否为偶数进行单调输出

     1 #include <stdio.h>
     2 #include <string.h>
     3 #include <stdlib.h>
     4 
     5 int main(){
     6     int i, k, n, left, right;
     7     while(scanf("%d %d", &n, &k) != EOF){
     8         left = 1; right = n;
     9         for(i = 1 ; i <= k; i++){
    10             if(i&1){
    11                 printf("%d ", left++);
    12             }
    13             else{
    14                 printf("%d ", right--);
    15             }
    16         }
    17         if(k&1){
    18             while(left < right){
    19                 printf("%d ", left++);
    20             }
    21             printf("%d ", left);
    22         }
    23         else{
    24             while(left < right){
    25                 printf("%d ", right--);
    26             }
    27             printf("%d ", right);
    28         }
    29     }
    30     return 0;

    31 } 

  • 相关阅读:
    【FFMPEG】ffmpeg 时间戳问题汇总
    【FFMPEG】基于RTP的H264视频数据打包解包类
    【FFMPEG】基于RTP的H264视频数据打包解包类
    【FFMPEG】使用FFMPEG+H264实现RTP传输数据
    【FFMPEG】使用FFMPEG+H264实现RTP传输数据
    【FFMPEG】谈谈RTP传输中的负载类型和时间戳
    【FFMPEG】谈谈RTP传输中的负载类型和时间戳
    【图像处理】FFmpeg解码H264及swscale缩放详解
    【图像处理】FFmpeg解码H264及swscale缩放详解
    【图像处理】FFmpeg-0
  • 原文地址:https://www.cnblogs.com/angle-qqs/p/4063520.html
Copyright © 2020-2023  润新知