2021.05.03 T3 数字 问题描述 一个数字被称为好数字当他满足下列条件: 1. 它有**2*n**个数位,n是正整数(允许有前导0) 2. 构成它的每个数字都在给定的数字集合S中. 3. 它**前n位之和与后n位之和相等**或者它**奇数位之和与偶数位之和相等** 例如对于n=2,S={1,2},合法的好数字有1111,1122,1212,1221,2112,2121,2211,2222这样8种. 已知n,求合法的好数字的个数mod 999983. 输入 第一行一个数n. 接下来一个长…
比较水的一场比赛,却不能 AK T1 有 \(n\) 次,每次给 \(A_i,B_i\) 问以 \(i\) 结尾的 \(A,B\) 的匹配中最大和的最小值 问最大和的最小值,却不用二分. 如果暴力排序,显然会超时 但是 \(A_i,B_i\le 100\) ,一个桶解决的事! #include<bits/stdc++.h> using namespace std; const int N=100005,M=105; int n,x[N],y[N],tx[M],ty[M],p[M],q[M],l…
该题还是考杨辉三角计算,只不过最后每一行都放入List集合中,然后返回,直接看代码: public static List<List<Integer>> generate(int row){ List<List<Integer>> list = new ArrayList<List<Integer>>(); int[][] arr = new int[row][row]; for(int j = 0;j<row;j++) { L…
// test14.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #include<string> #include<cctype> #include <vector> #include<cstring> //#include<stdexcept> #include<exception> using namespace st…
一.for循环方式实现输出[1, 2, 3, ..., n] var n = 5; function test(n){ var arr=[]; for( var i = 1; i <= n; i++){ arr.push(i) } return arr; } console.log(test(n)); //输出:[1, 2, 3, 4, 5] 二.利用递归实现输出[1, 2, 3, ..., n] var n = 10; function test(n){ var arr = []; retur…
给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小. 说明:每次只能向下或者向右移动一步. 例: 输入: [ [1,3,1], [1,5,1], [4,2,1] ] 输出: 7 解释: 因为路径 1→3→1→1→1 的总和最小. 问题分析:首先判断传入数组arr是否为空,为空直接返回0,新建数组array,用来表示每一步走后的数字之和,接下来步骤见代码注释 public static int minPathSum(int[][] arr) {…
2021.11.03 P6175 无向图的最小环问题 P6175 无向图的最小环问题 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 给定一张无向图,求图中一个至少包含 33 个点的环,环上的节点不重复,并且环上的边的长度之和最小.该问题称为无向图的最小环问题.在本题中,你需要输出最小的环的边权和.若无解,输出 No solution. 分析: 对于floyed,在第k个点时,任意的i到j之间的最短路已经经过了(k-1)个点. 代码如下: #include<cstdio…
2021.05.14 tarjan 标准版tarjan 这里使用数组来模拟栈 void tarjan(int x){ ++ind; dfn[x]=low[x]=ind; stacki[++top]=x; instack[x]=true; for(int i=head[x];i;i=a[i].next ){ int v=a[i].to ; if(dfn[v]==0){ tarjan(v); low[x]=min(low[x],low[v]); }else if(instack[v]){ low[x…
1,问题描述 给定一个整数N,该整数的二进制权值定义如下:将该整数N转化成二进制表示法,其中 1 的个数即为它的二进制权值. 比如:十进制数1717 的二进制表示为:0000 0110 1011 0101 故它的二进制权值为7(二进制表示中有7个1) 现在要求一个比N大,且最靠近N的数,且这个数的二进制权值与N相同.(这里不考虑Integer.MAX_VALUE 和负数情形.) 对于有符号的32位整数而言:它们的补码如下: Integer.MAX_VALUE= 0111 1111 1111 11…
题目 1 给定一个十进制的正整数,写下从1开始,到N的所有整数,然后数一下其中出现“1”的个数. 2 要求: (1) 写一个函数 f(N) ,返回1 到 N 之间出现的“1”的个数.例如 f(12)  = 5. (2)在32位整数范围内,满足条件的“f(N) =N”的最大的N是多少. 设计思想 (1)一位数时 f(0)=0;f(1)=1;f(2-9)=1; (2)二位数时 f(10)=1+(0+1)=2; f(11)=(1+1)+(1+1)=4; f(12)=(1+1)+(2+1)=5; f(1…