DS题目汇编

一、

二、表2-8洗盘子

代码

cpp 复制代码
#include <stdio.h>
# define MAXSIZE 50005
int pigs[MAXSIZE];
int lucky_pigs[3005];
void find_luck(){
    int n=0;
    for(int i=2;i<MAXSIZE;i++) pigs[n++]=i;
    int cnt=0;
    while(cnt<=3000){
        int head=pigs[0];
        lucky_pigs[cnt++]=head;
        int newn=0;
        int pos=0;
        for(int i=1;i<n;i++){
            pos++;
            //删除位置满足pos % head == 0。
            if(pos%head!=0){
                pigs[newn++]=pigs[i];//把没被删除的元素往前挪 
            }
        }
        n=newn;
    }
}
int main(){
    int t,x;
    find_luck();
    scanf("%d",&t);
    while(t--){
        scanf("%d",&x);
        printf("%d\n",lucky_pigs[x-1]);
    }
    return 0;
}
相关推荐
学涯乐码堂主19 小时前
GESP C++ 四级第一章:再谈函数(上)
c++·青少年编程·gesp·四级·学漄乐码青少年编程培训
微露清风20 小时前
系统性学习C++-第九讲-list类
c++·学习·list
大佬,救命!!!20 小时前
C++多线程同步与互斥
开发语言·c++·学习笔记·多线程·互斥锁·同步与互斥·死锁和避免策略
散峰而望21 小时前
C++入门(一)(算法竞赛)
c语言·开发语言·c++·编辑器·github
C_Liu_21 小时前
13.C++:继承
开发语言·c++
凡同学。21 小时前
通信人C++自学
c++·应届生秋招·后端四件套
威桑1 天前
C++ Linux 环境下内存泄露检测方式
linux·c++
报错小能手1 天前
C++笔记(面向对象)RTTI操作符
开发语言·c++·笔记
GOATLong1 天前
git使用
大数据·c语言·c++·git·elasticsearch
十五年专注C++开发1 天前
Qt-Nice-Frameless-Window: 一个跨平台无边框窗口(Frameless Window)解决方案
开发语言·c++·qt