zoukankan      html  css  js  c++  java
  • 【csp】2017-12

    第一题:游戏

    题目:

    题意:啊,不多赘述。看的懂。

    题解:sort一下直接暴力比较大小。

    代码:

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<algorithm>
     4 #include<cmath>
     5 #include<queue>
     6 #include<stack>
     7 #include<cstring>
     8 using namespace std;
     9 #define ll long long 
    10 #define INF 0x3f3f3f3f
    11 const int maxn = 100+10;
    12 
    13 
    14 int a[maxn];
    15 
    16 
    17 int main(){
    18     int n;
    19     cin>>n;
    20 
    21     for(int i = 0 ; i < n ;i++){
    22         cin>>a[i];
    23     }
    24     
    25     sort(a,a+n);
    26     int minn = INF;
    27     for(int i = 0; i < n-1 ;i++){
    28         if(a[i+1] - a[i] < minn){
    29             minn = a[i+1] - a[i];
    30         }
    31     }
    32     cout<<minn<<endl;
    33 
    34 
    35     return 0;
    36 }
    View Code

    第二题:最小差值

    题目:

    题意: 同样很清晰不再赘述。但是这里看清楚,不是约瑟夫环。里面有一个当前数的余数为k也算输。

    题解: 计数当前的数字,每一个小朋友都做标记,暴力循环做。最后还剩下一个人的时候就输出结果。这里有个坑,就是说应该特判一下k==1的时候,直接输出n.

    代码:

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<algorithm>
     4 #include<cmath>
     5 #include<queue>
     6 #include<stack>
     7 #include<cstring>
     8 using namespace std;
     9 #define ll long long 
    10 #define INF 0x3f3f3f3f
    11 const int maxn = 1000+10;
    12 int flag[maxn];
    13 
    14 int main(){
    15     int n,k;
    16     cin>>n>>k;
    17     int cnt = 1;
    18     int count = 0;
    19     if(k == 1){
    20         cout<<n<<endl;
    21     }
    22     while(count < n-1){
    23         for(int i = 1; i <= n; i++){
    24             if(flag[i])
    25                 continue;
    26             else{
    27                 if(cnt % k == 0 || cnt % 10 == k){
    28                     flag[i] = 1;
    29                     cnt++;
    30                     count++;
    31                 }
    32                 else{
    33                     cnt++;
    34                 }
    35             }            
    36         }
    37         //cout<<count<<" "<<cnt<<endl;
    38     }
    39     for(int i = 1; i <= n ;i++){
    40         if(flag[i] == 0){
    41             cout<<i<<endl;
    42         }
    43     }
    44     return 0;
    45 }
    View Code

    第三题:corntab

    题目:

    意:

    题解:

    代码:

  • 相关阅读:
    Shell工具——cut、sed、awk、sort
    基于RocketMQ分布式事务实现
    Alpine Linux 包管理工具
    分布式事务之可靠消息最终一致性
    消息系统本质思考
    深入剖析Redis数据结构
    Feign原理深入剖析
    Shell中 /dev/null用法解析
    Lua 数据类型与变量
    分布式事务之Seata开源方案
  • 原文地址:https://www.cnblogs.com/Asumi/p/9606868.html
Copyright © 2011-2022 走看看