题目:有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位. Scanner scanner = new Scanner(System.in); int len = scanner.nextInt(); boolean[] arr = new boolean[len]; for (int i = 0; i < arr.length; i++) { arr[i] = true; //初始化全部在圈内 } int index = 0;…
public int remainPersonNumber(int n, int m) { //输入不合法 if(n < 1 || m < 1) return -1; //初始化,存入List LinkedList<Integer> list = new LinkedList<>(); for(int i = 0; i < n; i++) { list.add(i); } int index = 0; while(list.size() > 1) { ind…
提示 Could not get lock /var/lib/dpkg/lock 报错? 有些小伙伴在使用 apt 包管理器更新或安装软件时,可能会遇到过诸如以下的错误提示: E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable) E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-fr…
首先模拟一遍得到n个同余方程,然后用扩展欧几里得求出最小的可行解即可,时间复杂度$O(n^2)$. #include<cstdio> #define N 30 int n,i,j,k,x,y,a[N],b[N],d[N],ans; namespace Solve{ int flag=1,k=1,m=0,d,x,y; int exgcd(int a,int b,int&x,int&y){ if(!b)return x=1,y=0,a; int d=exgcd(b,a%b,x,y)…