首页 > TAG信息列表 > Nastia
cf1521 E. Nastia and a Beautiful Matrix
题意: 你有 \(a_i\) 个数字 \(i\),要把它们都放进 \(n*n\) 网格内,每格可以为空或者放一个数。要求对于任何 \(2*2\) 子网格,有数的位置不能超过 \(3\) 个,且对角线上的数不能相等 输出放数后的网格图,要求 \(n\) 最小 思路: 当 \(n\) 确定的时候要咋放? 首先横纵坐标均为偶数的位置(图中「CF1521E」Nastia and a Beautiful Matrix - 题解
题目大意 你有 \(k\) 个数字,他们分别是 \(1,2,3,...,k\) 对于数字 \(i\) 你有相同的 \(a_i\) 个。 定义一个 \(n \times n\) 的矩阵为美丽矩阵: 这个 \(n\times n\) 的矩阵包含了你所拥有的所有数字; 对于每个 \(2\times 2\) 的子矩阵,占用的格子不能超过 \(3\)(当一个格子的A. Nastia and Nearly Good Numbers【1000 / 思维 构造】
https://codeforces.com/problemset/problem/1521/A 几乎好的数是x%a==0 && x%(a*b)!=0 好的数是x%(a*b)==0 所以如果b==1 那么结果一定不存在 A(a+b)=ABc a+b=B*c 让c等于1,剩下的数随便分B 当B=2时乘以2 一个分1 一个分3即可。 #include<bits/stdc++.h> using namespace stA. Nastia and Nearly Good Numbers
构造。之前没接触过,不会做。 就是构造成这个样子就行了 print(a * b, a, a*(b + 1))#加减乘除合并同类项,是成立的,也可以像下面一样变化一下 print(a * (b + 5), a, a*(b + 6)) 有两个点要注意 1 如果B等于1,那么x, y, z都可以被b整除,都是good number,不符合题意 2 题目要求x, y, zCodeforces Round #720 (Div. 2) B. Nastia and a Good Array(被坑好几次)1300
原题链接 Problem - B - Codeforces 题意 给一串数,要把任意两个相邻的数的最大公约数=1 每次可以进行一个操作: 取下标为i, j的数,和任意二数x,y,且min(ai,aj)=min(x,y) 满足上述条件,即可使ai=x,aj=y 限制条件:操作次数 <= n 思路 找到数列最小值,操作完是最小值不变,其余数大小=最B. Nastia and a Good Array
B. Nastia and a Good Array Example input 2 5 9 6 3 11 15 3 7 5 13 output 2 1 5 11 9 2 5 7 6 0 题目大意: 给一个数组,每次选择两个下标i,j和两个正整数x,y,下标对应的两个数的最小值和两个正整数x,y的最小值相等,最终使得数组相邻两个数的gcd都为1,求操作次数 和 操作过C. Nastia and a Hidden Permutation(Codeforces Round #720 (Div. 2)题解)
题目链接:C. Nastia and a Hidden Permutation 思路:求出1的位置是关键,因为我们一旦求出来1的位置,我们就可以通过n-1次询问确定其他剩余的位置:设1的位置为x,则这样询问:【1 x i n-1】,这样询问首先求\(min(1,n-1) = 1,min(a_i,n) = a_i\)再求\(max(a_i,1) = a_i\)所以得到的数就是\(Codeforces Round #720 (Div. 2) Nastia and a Good Array
一、算法分析 基本题意是给定一个数列,然后每次可以找两个数,将这两个数交换位置,再将两个里面较大的那个换成任意一个大于等于这两个数中较小者的数。或者将两个数中较大的那个变得更大。最终目标是相邻两个数互质。要求这样的操作次数少等于n次。这道题的一个关键信息是操作次数不Codeforces Round #720 (Div. 2) C. Nastia and a Hidden Permutation (交互)
题意:有一长度为\(n\)的排列\(p\),有两种询问,第一种可以询问\(p\)的两个不同为位置\(i\)和\(j\)和一个数\(x\)并返回\(max(min(x,p_i),min(x+1,p_j))\),第二种返回\(min(max(x,p_i),max(x+1,p_j))\).要求你在\(\lfloor\frac{3*n}{2}\rfloor+30\)次询问内确定排列\(p\). 题解CF1521D Nastia Plays with a Tree 题解
一、题目: codeforces原题 洛谷原题 二、思路: 这是一道非常清奇的贪心题。 考虑这样一件事情,假设我们切了\(x\)刀后把整棵树变成了一堆链,那么链的个数一定是\(x+1\)。 这样的话,我们只需要将这些链首尾相连,最终形成的树也一定是一条链,而首尾相连的操作次数也一定是\(x\)。 我们又可Codeforces Round #720 (Div. 2) C.Nastia and a Hidden Permutation(思维)
题目链接:https://codeforces.com/contest/1521/problem/C This is an interactive problem! Nastia has a hidden permutation p of length n consisting of integers from 1 to n. You, for some reason, want to figure out the permutation. To do that, you can give herCodeforces Round #720 (Div. 2) A. Nastia and Nearly Good Numbers
一、写在前面 昨天虽然没有很长的时间打比赛,只打了一个小时就去睡了。但是昨天的A题是自己做构造题的第一个突破,是自己第一次在赛场上用分析和一些解题技巧(如手动模拟样例),有条不紊地解决的一道题。 二、算法分析 首先想到将$x+y=z$写成$Ai+Aj=ABk$,这样可以约掉A.变成$i+j=Bk$,然后B. Nastia and a Good Array
B. Nastia and a Good Array 题目大意: 给定一个长度为n的序列,要求对每个a[i], a[i + 1] 进行变化为a,b使得gcd(a,b) == 1,且min(a[i],a[i+1])==min(a,b)。要求操作次数最多为n次。 思路: 一开始我写了一个质数筛,然后依次遍历整个数组,利用二分查找质数,结果小数据跑过了,大数据拉胯。。B. Nastia and a Good Array(构造)
题意 给你一个序列,如果这个序列对于所有的i满足 g c d ( a iCodeforces Round #720 (Div. 2) 题解
\(PS:\)跟\(SB\)一样看错题,\(A\)和\(B\)快\(wa\)哭了。状态不佳,下次再战。 比赛链接 A. Nastia and Nearly Good Numbers 题意 给定两个数字\(A\)和\(B\),要求找到三个不同的数\(x,y,z\)使得\(x+y=z\)成立且其中一个数能被\(A * B\)整除,其余两个能被\(A\)整除。 思路 首先我们可以Codeforces Round #720 (Div. 2) 题解 (ABCD)
目录A. Nastia and nearly Good NumbersB. Nastia and a Good ArrayC. Nastia and a Hidden PermutationD. Nastia Plays with a Tree 传送门 A. Nastia and nearly Good Numbers 大意:求互不相同的三个正整数 \(x,y,z\) 满足其中一个被 \(AB\) 整除,另外两个数不被 \(AB\) 整除但是