转跳到内容

新人的算法挑战 #1


只显示该作者

只有该作者的内容显示中。 返回到主题

推荐贴

于 2022/5/2 于 PM6点47分, big_yellow_doge 说道:

思路差不多是可以的呢,不过还有复杂度更低的方法哦,1e6的数据大概率是要TLE的呢

然后判断的应该是a[i]+1 != a[i+1]的时候输出a[i]

还有就是如果doge的学号是最大的值,还会出现数组越界的情况哦

:mx043:

话说 这个可以解决的 比如进行顺序排序 后先判断数组第一位和最后一位 是不是分别等于奇数 ,偶数 如果是的话 情侣规则不匹配了 直接输出 它

然后在继续 

 for (int i = 0; i < (sizeof(a) / sizeof(int)); i=i+2) {
            if (a[i] + 1 != a[i + 1]) {
                std::cout << a[i];
                i = (sizeof(a) / sizeof(int));

            }

        }

#include <iostream>

int main()
{
    
    int a[] = { 88,89,90,98,99};

    if (a[0] % 2 == 1) {



        std::cout << a[0];

    }else if (a[(sizeof(a) / sizeof(int) - 1)] % 2 == 2){




        std::cout << a[(sizeof(a) / sizeof(int) - 1)];


     }else{

        for (int i = 0; i < (sizeof(a) / sizeof(int)); i=i+2) {
            if (a[i] + 1 != a[i + 1]) {
                std::cout << a[i];
                i = (sizeof(a) / sizeof(int));

            }

        }
    }

   

}

虽然有点小问题  

,由万人毒修改
链接到点评
12 分钟前, AlGoRiThM 说道:
  隐藏内容

目前已知,男同学和女同学学号相邻~,因此,只要从list之中删除不相邻的,即可找到单身狗的学号~

  隐藏内容

Sample code:

def main(N, arrays):
    while True:
        select = arrays[0]
        if select+1 in arrays:
            arrays.remove(arrays.index(select+1))
            arrays.remove(0)
        elif select-1 in arrays:
            arrays.remove(arrays.index(select-1))
            arrays.remove(0)
        else:
            return select

没有考虑不存在单身狗的情况~

 

请考虑一下59 60 61 62 这种情况 像这组就两个单身狗了  60 61 才是情侣 情侣条件 (女 偶数 +1的男才是情侣 情侣女必须比情侣男-1

万人毒看指路牌的时候拾起一片古怪的叶子,被河童用1节操买來高兴地吃掉了

链接到点评
  • 骚男锁定了本主题
游客
此主题已关闭。
×
×
  • 新建...

重要消息

为使您更好地使用该站点,请仔细阅读以下内容: 使用条款