分糖果 链接:https://www.nowcoder.com/acm/contest/173/B 来源:牛客网 题目描述 \(N\) 个小朋友围成一圈,你有无穷个糖果,想把其中一些分给他们. 从某个小朋友开始,我们顺时针给他们标号为\(1\) ~ \(N\).第 \(i\) 个小朋友可以得到至多 \(a[i]\),至少 \(1\) 个糖果. 问,有多少种分配方案使得每一对相邻的小朋友拿到的糖果数不同.答案对 \(10^9 + 7\) 取模. 输入描述: 第一行一个整数 \(N\). 接下来一行…
A 对于\(100\%\),直接开个桶统计即可.入门题目. 代码:https://ac.nowcoder.com/acm/contest/view-submission?submissionId=41153707&scrollToDetail=1 B 对于\(100\%\),直接按题目模拟就好.每次两个指针扫一下就是\(O(n)\)的了.整个加起来是\(O(\max(n,len)\times m)\)的复杂度.可以结合代码理解. 代码:https://ac.nowcoder.com/acm/co…
https://ac.nowcoder.com/acm/contest/920#question A 构造+双指针 发现m的限制是1e5,而点数是5e4,所以不能构造太多的边,思考一下最短路树的定义.会发现其实就是要构造出一个最短路树.按\(a_i\)升序排序,那么只需要找一个在\(a_i-S\)的点连边即可.这个玩意可以直接用双指针或者二分或者其他什么数据结构来实现.判断无解即判断是否存在大于S的边或者0边.复杂度\(O(n \log n)\) #include <bits/stdc++.h>…
牛客OI赛制测试赛3 毒瘤xor 传送门 题面,水表者自重 Solution 前缀和简单题(挖坑待补) 代码实现 #include<stdio.h> #define int long long int a[100010],n,sum[100010][31],two[31],tmp[31]; void init(){ two[0]=1; for(int i=1;i<31;i++) two[i]=two[i-1]<<1; } signed main(){ scanf("…
牛客OI赛制测试赛2(0906) A :无序组数 题目描述 给出一个二元组(A,B) 求出无序二元组(a,b) 使得(a|A,b|B)的组数 无序意思就是(a,b)和(b,a) 算一组. 输入描述: 第一行数据组数 T(1≤T≤10000) 接下来T行,每行两个正整数 A,B(1≤A,B≤10000) 输出描述: 共T行,每行一个结果 输入 1 4 6 输出 11 说明 样例解释: 二元组如下: (1,1)(1,2)(1,3)(1,6) (2,1)(2,2)(2,3)(2,6) (4,1)(4,…
链接:https://www.nowcoder.com/acm/contest/147/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 Niuniu likes to play OSU! We simplify the game OSU to the following problem. Given n and m, there are n clicks. Each c…
题目描述 给出一个长度为n的序列,你需要计算出所有长度为k的子序列中,除最大最小数之外所有数的乘积相乘的结果 输入描述: 第一行一个整数T,表示数据组数.对于每组数据,第一行两个整数N,k,含义如题所示 接下来一行N个整数,表示给出的序列 保证序列内的数互不相同 输出描述: 对于每组数据,输出一个整数表示答案,对 取模每组数据之间以换行分割链接:https://www.nowcoder.com/acm/contest/181/F来源:牛客网 输入 复制 3 4 3 5 3 1 4 5 4 3 7…
A题: https://www.nowcoder.com/acm/contest/185/A 链接:https://www.nowcoder.com/acm/contest/185/A来源:牛客网 题目描述 给出一个二元组(A,B) 求出无序二元组(a,b) 使得(a|A,b|B)的组数 无序意思就是(a,b)和(b,a) 算一组. 输入描述: 第一行数据组数 T(1≤T≤10000)接下来T行,每行两个正整数 A,B(1≤A,B≤10000) 输出描述: 共T行,每行一个结果 输入例子: 1…
链接:https://www.nowcoder.com/acm/contest/105/H来源:牛客网 n个桶按顺序排列,我们用1~n给桶标号.有两种操作: 1 l r c 区间[l,r]中的每个桶中都放入一个颜色为c的球 (1≤l,r ≤n,l≤r,0≤c≤60) 2 l r   查询区间[l,r]的桶中有多少种不同颜色的球     (1≤l,r ≤n,l≤r) 输入描述: 有多组数据,对于每组数据:第一行有两个整数n,m(1≤n,m≤100000)接下来m行,代表m个操作,格式如题目所示.…
链接:https://www.nowcoder.com/acm/contest/147/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 Niuniu has recently learned how to use Gaussian elimination to solve systems of linear equations. Given n and a[i], wh…
链接:https://www.nowcoder.com/acm/contest/145/J 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K Special Judge, 64bit IO Format: %lld 题目描述 You have a n * m grid of characters, where each character is an English letter (lowercase or uppercase, w…
链接:https://www.nowcoder.com/acm/contest/145/C 来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 262144K,其他语言524288K Special Judge, 64bit IO Format: %lld 题目描述 A binary string s of length N = 2n is given. You will perform the following operation n times : - Choos…
链接:https://www.nowcoder.com/acm/contest/145/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K Special Judge, 64bit IO Format: %lld 题目描述 You have a complete bipartite graph where each part contains exactly n nodes, numbered from 0 to n - 1…
qwq听说是一场普及组难度的比赛,所以我就兴高采烈地过来了qwq 然后发现题目确实不难qwq.....但是因为蒟蒻我太蒻了,考的还是很差啦qwq orz那些AK的dalao们qwq 赛后闲来无事,弄一篇解题报告好了qwq T1 无序组数 和数学相关的一个题目吧,因为题目的数据范围很小,所以可以先预处理出每个数的约数个数(包括1和它本身) 然后下面自然是\(sum[a]*sum[b]\)减去重复的了qwq 然后重复的话自然是最大公约数的因数个数组合,因为不能重复,那么就是\(sum[gcd(a,b…
链接:https://www.nowcoder.com/acm/contest/185/C来源:牛客网 给出一个数列 A,求出一个数列B. 其中Bi   表示 数列A中 Ai 右边第一个比 Ai 大的数的下标(从1开始计数),没有找到这一个下标  Bi 就为0 输出数列B 输入描述: 第一行1个数字 n (n ≤ 10000) 第二行n个数字第 i 个数字为 Ai (0 ≤ Ai  ≤ 1000000000) 输出描述: 一共一行,第 i 个数和第 i+1 个数中间用空格隔开.题解:虽然直接暴力…
推箱子 链接: https://ac.nowcoder.com/acm/contest/176/B 来源:牛客网 题目描述 在平面上有\(n\)个箱子,每个箱子都可以看成一个矩形,两条边都和坐标轴平行.任何两个矩形都不相交,但可能有某个点或某条边重合.约定\(x\)轴正方向为右,\(y\)轴正方向为上. 现在\(\tt{Fizzydavid}\)要推这些箱子.他会选择某个箱子开始,并以每秒\(1\)个单位的速度使这个箱子向右移动.如果路上正面碰上某个箱子,被碰上的箱子会在碰到的那个瞬间开始进入运…
链接:https://www.nowcoder.com/acm/contest/185/D来源:牛客网 题目描述 Johnson和Nancy要在星光下吃晚餐.这是一件很浪漫的事情. 为了增加星光晚餐那浪漫的氛围,他拿出了一个神奇的魔法棒,并且可以按照一定的规则,改变天上星星的亮暗. Johnson想考考Nancy,在他挥动魔法棒后,会有多少颗星星依旧闪耀在天空.他知道,Nancy一定会一口说出答案. Nancy当然知道怎么做啦,但她想考考你! Johnson先将天上n个星星排成一排,起初它们都是…
链接:https://www.nowcoder.com/acm/contest/185/C来源:牛客网 题目描述 给出一个数列 A,求出一个数列B. 其中Bi   表示 数列A中 Ai 右边第一个比 Ai 大的数的下标(从1开始计数),没有找到这一个下标  Bi 就为0 输出数列B 输入描述: 第一行1个数字 n (n ≤ 10000) 第二行n个数字第 i 个数字为 Ai (0 ≤ Ai  ≤ 1000000000) 输出描述: 一共一行,第 i 个数和第 i+1 个数中间用空格隔开. 输入例…
链接:https://www.nowcoder.com/acm/contest/185/A来源:牛客网 题目描述 给出一个二元组(A,B) 求出无序二元组(a,b) 使得(a|A,b|B)的组数 无序意思就是(a,b)和(b,a) 算一组. 输入描述: 第一行数据组数 T(1≤T≤10000)接下来T行,每行两个正整数 A,B(1≤A,B≤10000) 输出描述: 共T行,每行一个结果 输入例子: 1 4 6 输出例子: 11 --> 示例1 输入 复制 1 4 6 输出 复制 11 说明 样例…
昨天因为胡搞了一会儿社团的事情,所以错过(逃过)了nowcoder的测试赛..... 以上,听说还是普及组难度qwq,而且还有很多大佬AK(然而我这么蒻肯定还是觉得有点难度的吧qwq) 不过我还是日常来补一下题解好了qwq T1 数字权重(快速幂) 这个就是你把式子\(\sum_{i=2}^n(a_i-a_{i-1})=K\)展开就是\(a_n-a_1\)嘛...所以就是水题一个qwq 但是要注意因为数据范围比较大,所以我们要有快速幂.而且注意不合法情况的特判qwq #include<iostr…
这场说实话确实水(逃*1),表示差一点就AK了(逃*2),然而被卡两个特判的我\(ssfd\)...\(qwq\) 表示这是第一次发整场比赛的题解...还请各位大佬原谅我太蒻写的垃圾啊\(qwq\)... 难度:据出题人之一\(sqn\)小\((da)\)姐\((ge)\)姐\((ge)\)说大概是难度倒序排列...但是个人感觉其实都不难(逃*3)...所以差一点就AK了(逃*4) \(A\) 数字权重 题目描述:设一个\(n\)位数的最高位为\(a_1\),最低位为\(a_n\),对于给定的\…
前话: 话说考试描述:普及难度. 于是想在这场比赛上涨点信心. 考出来的结果:Point:480     Rank:40 然而同机房的最好成绩是 510. 没考好啊!有点炸心态,D题一些细节没有注意,然后B题简单的贪心没有想到,GG-再给我30分钟我能AK! A题:数字权重 题目描述 小a有一个n位的数字,但是它忘了各个位上的数是什么,现在请你来确定各个位上的数字,满足以下条件: 设第i位的数为ai,其中a1为最高位,an为最低位,K为给定的数字 1. 不含前导0 2. 请你求出满足条件的方案数…
F-Partition problem https://ac.nowcoder.com/acm/contest/882/F 题意:输入一个数n,代表总共有2n个人,然后每个人对所有人有个贡献值,然后问题需要将2n个人分成两组,每组n个人,问如何分组使得两组之间的价值最大,同组人不算价值. 思路:直接dfs暴力分组. //aeha #include<bits/stdc++.h> using namespace std; typedef long long int ll; typedef unsi…
哇这道题好坑啊,可能是我太菜了 题意就是叫把一个连续序列分成K组,使得每个组的和都相等 我最开始的想法是由于要分成K组,那我们知道,每组一定有sum(a[i])/k这样我们只需要每次当num==sum/k时,把num变成0 这样我们看最后是不是0,即可判断是否可以分组,但是最后要考虑到末尾为0的情况,你比如,序列是9 -1 8 0,你分2组,那 么我们知道,在8的时候我们就把num清空了,这样flag遇到0就变变成负数,就判断错了,我们其实可以这样,在最后再次判断num==0如果还等于0,那么就…
A - 数字权重 题目大意: 一个\(n\)位的数字.设第\(i\)位的数为\(a_i\),其中\(a_1\)为最高位,\(a_n\)为最低位,\(k\)为给定的数字.求同时满足满足以下两个条件的数的个数: 不含前导\(0\): \(\sum_{i=2}^n(a_i-a_{i-1})=k\). \(n,|k|\le10^{13}\). 思路: 对和式稍加变形得\(a_n-a_1=k\),因此我们只需要考虑\(a_1\)和\(a_n\),其余数位\(0\sim 9\)随便放即可. 源代码: #in…
A 斐波那契 数竞生:这不是送分的常识吗? 这里引入一个叫卡西尼恒等式的玩意. 公式表达就是 设$fib[i]$为斐波那契数列的第$i$项$(i>0,i \in N_+)$ 则有 $fib[i+1]fib[i-1]-fib[i]^2=(-1)^i$,其中$(i>1,i \in N_+ )$ 因为数据说明了$i>=2$,所以我们可以用数学归纳法证明这个结论. 首先看边界条件, $fib[1]=fib[2]=1,fib[3]=2$ $fib[3]*fib[1]-fib[2]^2=2*1-1^…
A.矩阵 题目链接:https://www.nowcoder.com/acm/contest/submit/f8363c912a4c48a28b80f47e7102b6b8?ACMContestId=2&tagId=4 题目意思:这个题目是中文就不加解释了,首先这个子矩阵,就说明这个矩阵是实心的,并不是只是一个框,所以为什么我强调这点呢?因为比赛的时候我傻逼了,唉,心痛. 题目思路:二维哈希+二分 之前没学过哈希,所以第一次遇到就碰到二维的哈希qwq,首先哈希就是为了把一个字符串通过一个基数(一…
留个坑... upd:估计这个坑补不了了 如果还补不了就删了吧…
A矩阵 时间限制:1秒 空间限制:131072K 题目描述 给出一个n * m的矩阵.让你从中发现一个最大的正方形.使得这样子的正方形在矩阵中出现了至少两次.输出最大正方形的边长. 输入描述: 第一行两个整数n, m代表矩阵的长和宽: 接下来n行,每行m个字符(小写字母),表示矩阵: 输出描述: 输出一个整数表示满足条件的最大正方形的边长. 示例1 输入 5 10 ljkfghdfas isdfjksiye pgljkijlgp eyisdafdsi lnpglkfkjl 输出 3 备注: 对于…
传送门:https://www.nowcoder.com/acm/contest/96/C 参考:http://www.cnblogs.com/Dillonh/p/8835074.html 题意: durong有a台iphonex和b台s8,并且放在一个保险箱里,durong现在一台一台从保险箱随机拿出这些手机,现在他想知道第k次拿出s8的概率是多少. 思路: 这道题的数学推到真的是惊奇呀. 由此就可以发现结果和K无关,只与a,b有关: #include <cstdio> using name…