首页 > 其他分享 >Codeforces Round 961 (Div. 2)

Codeforces Round 961 (Div. 2)

时间:2024-07-24 21:57:09浏览次数:7  
标签:961 大花 int ll cin long Codeforces Div c1

A. Diagonals

----------------------------题解----------------------------------
注意读题,题目中只有i+j相同的格子才是一个对角线,也就是说,(1,1)(2,2)(3,3)的那条大斜线不是个对角线,


如图所示这是一个3*3的图中所有的对角线,那么我们只需要如图所示,从中间往两边依次放就可以,采用暴力做法,我先往中间放满,看有没有剩余,如果有剩余就一次一次判断中间往两边的线有没有放满,i就是对角线能放的线段条数

点击查看代码
#include<bits/stdc++.h>
using namespace std;
int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        int n,k;
        cin>>n>>k;
        int cnt=0;
        if(k!=0)k-=n,cnt++;
        for(int i=n-1;i>=1;i--)
        {  if(k<=0) break;
            else k-=i,cnt++;
            if(k<=0) break;
            else k-=i,cnt++;
            
        }
        cout<<cnt<<'\n';
    }
}

B1. Bouquet (Easy Version)

实验室一个看vtb的

标签:961,大花,int,ll,cin,long,Codeforces,Div,c1
From: https://www.cnblogs.com/qau-marisa3/p/18321846

相关文章

  • codeforces div_2 961 题解报告
    codeforcesdiv_2961题解报告比赛链接:https://codeforces.com/contest/1995A.Diagonals题目翻译给定一个边长为\(n\)的正方形,给定\(k\),要往正方形选\(k\)个点,\(x+y\)相同的点构成对角线,问至少要几条对角线才能装下\(k\)个点。时限1s,空间限制256MB\(1\len\le100,0\l......
  • Codeforces Round 961 (Div. 2)
    A.JoeyTakesMoney--------------------------题解------------------------------------选取x和y替换掉a[i],a[j],前提是两者乘积相同,最后要求和数组最大,其实很简单,我们只需要不对另x=1y=a[j]*a[x]就行,从左到右遍历整个数组队a[i]和a[i+1]进行此操作,就可以得到我们想要的值......
  • Codeforces Round 961 (Div. 2)
    题目链接:CodeforcesRound961(Div.2)总结:B1wa两发可惜,C出得有点小慢。A.Diagonalsfag:贪心Description:给定一个\(n*n\)的棋盘,给定\(k\)个棋子,每个格子只能放一个棋子,求将棋子全部放入棋盘,至少需要占几条对角线。Solution:求最少占用,显然贪心处理,从最长的对角线开始占用,对......
  • Codeforces Round 961 (Div. 2)
    题目链接:CodeforcesRound961(Div.2)总结:B1wa两发可惜,C出得有点小慢。A.Diagonalsfag:贪心Description:给定一个n∗nn*n......
  • Codeforces Round 961 (Div. 2)
    A#include<bits/stdc++.h>usingnamespacestd;inta[200];voidsolve(){intn,k;cin>>n>>k;a[1]=n;for(intj=n-1,i=2;i<=1+(n-1)*2;i+=2,j--){a[i]=a[i+1]=j;}if(!k){cout<<0<<"\n......
  • Codeforces Round 961 (Div. 2) 补题记录(A~D)
    上大分,赢!A考虑将每一条对角线上可以存放的砝码数量都记录一下,从大到小排序,然后直接暴力贪心选择。此时可以发现数量一定形如\(n,n-1,n-1,n-2,n-2,n-3,n-3,\ldots,1,1\)这样的形式。直接暴力减即可。时间复杂度为\(O(n)\)。#include<bits/stdc++.h>#defineintlonglong......
  • Codeforces 1987C
    codeforcesP1987C给定一个n长度的数组,每一步都要遍历整个数组。如果某个元素是末尾元素或是比其后一个元素大,则该元素减去1直到该元素为0,求解总步数,算法复杂度要求\(O(n)\)先给出暴力解法,复杂度\(O(n^2)\): intt=0; do{ for(inti=0;i<n-1;i++){ if(a[i]......
  • C. Divisor Chain
    原题链接题解任何数一定可以被二进制表示下最低位的一及以下的二次方数整除code#include<bits/stdc++.h>#definelllonglong#definelowbit(x)((x)&(-x))usingnamespacestd;voidsolve(){intn;cin>>n;intm=log2(n);intn1=1<<m;vector......
  • Codeforces Round 957 (Div. 3)复盘
    今天打了一下DIV3,专业转了就是不一样T1Onlypluses这道题主要就是理解乘法分配律,最多的绝对是两数相乘数最大的。T2AngryMonkey这道题一遍AC,虽然很简单还是值得鼓励,主要还是数学问题,用笔写下来找到数学规律之后做起来就很快T3GorillaandPermutation这道题还是很简单......
  • Codeforces Round 952 (Div. 4)复盘
    第一次打比赛的总结Q1CreatingWords这道题其实主要考的就是对于输入语句的理解,最开始我想的是运用scanf,puts,一个语句一个语句的去读取,但是确实对各个输入语句的了解过于肤浅了,特别是哪个读不读空格之类的,其实也算是没有把题目看清楚,它的难度其实没有自己以为的那么难,因为是限......