首页 > 其他分享 >寒假5

寒假5

时间:2024-02-27 16:38:00浏览次数:20  
标签:std int namespace long 寒假 using include

A

count(1)

#include <bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin>>n;
    int a[n];
    int cnt=0;
    for(int i=0;i<n;i++)
    {
        cin>>a[i];
        if(a[i]==1)cnt++;
    }
    cout<<n-cnt<<endl;
    return 0;
}

C

只要a[i]!=1&&a[i-1]!=1就能插入0,每次插入后ai后要是又能插入的话就需要记录一下,其实就是把ai-=w就行了

#include <bits/stdc++.h>
#define int long long
using namespace std;

signed main() {
    int n;
    cin>>n;
    vector<int>a(n+1);
    int sum=0;
    for(int i=1;i<=n;i++)cin>>a[i];
    a[n+1]=INT_MAX;
    a[0]=INT_MAX;
    for(int i=1;i<=n+1;i++)
    {
        if(a[i]!=1&&a[i-1]!=1)
        {
            sum+=min(a[i],a[i-1])-1,a[i]-=min(a[i],a[i-1])-1;
            //cout<<i<<endl;
        }
    }
    cout<<sum<<endl;
    return 0;
}

G H

线性筛+构造

以n=3为eg:1 3 2 其实ai+i后是2 5 5 看出在相邻数字时将ai+i和aj+j构造成一个相同的质数就能过了(why -1 )

#include <bits/stdc++.h>
#define int long long
using namespace std;
bool not_prime[2000005]={0};
int a[2000005],prime[2000005];
signed main()
{   
    int n,t,z=0;
    cin>>n;
    for(int i=2;i<=2*n;++i)       
    {
       if(!not_prime[i])
       {
            prime[++z]=i;
            for(int j=i*i;j<=2*n;j+=i) 
                not_prime[j]=1;
       }
    }
    t=n;
    while(t>=1)
    {
        int x=prime[z],y=t;     
        z--;
        for(int i=y;x-i<=y&&i>=1;i--)
        {
            a[i]=x-i;
             t--;
        }
    }
    for(int i=1;i<=n;i++)
        cout<<a[i]<<' ';
 	return 0;
}

I

模拟

建议画图就好(看题目看不太懂使我脑壳昏去)

#include<bits/stdc++.h>
#define int long long
using namespace std;
signed main(){
    
    int t,a,k,sum=0;
    cin>>t>>a>>k;
    if(t>0){
        if(-k<=a&&a<=t+k){
            sum+=abs(a);
            sum+=abs(a-t);
        }
        else{
            sum+=abs(t);
            sum+=2*abs(t-a);
        }
    }
    else{
        if(-k+t<=a&&a<=k){
            sum+=abs(a);
            sum+=abs(a-t);
        }
        else{
            sum+=abs(t);
            sum+=2*abs(t-a);
        }
    }
    cout<<sum<<"\n";
    return 0;
}

看到一位✌️的写法。

if(abs(a)<=k||0<=a&&a<=t||t<=a&&a<=0) cout<<abs(a)+abs(a-t)<<endl;
    else cout<<abs(t)+2*abs(t-a)<<endl;

M

最多俩 找特例

(在这反省一下我每次写t组测试都不写solve函数导致很多时候有特例都是cout然后continue 在这里有循环就不方便了)

#include <bits/stdc++.h>
#define int long long
using namespace std;
void solve()
{
    int n,a[100005],b[100005];
    cin>>n;
    for(int i=1; i<=n; i++)
        cin>>a[i];
    for(int i=1; i<=n; i++)
        cin>>b[i];
    if(n==1)
    {
        cout<<-1<<endl;
        return;
    }
    if(n==2)
    {
        if(a[1]==b[1])cout<<-1<<endl;
        else cout<<1<<endl;
        return;
    }
    for(int i=2; i<=n-1; i++)
    {
        if(a[i]==b[i])
        {
            cout<<1<<endl;
            return;
        }
        if(a[i-1]==b[i])
        {
            cout<<1<<endl;
            return;
        }
        if(a[i+1]==b[i])
        {
            cout<<1<<endl;
            return;
        }
        if(a[i]==b[i-1])
        {
            cout<<1<<endl;
            return;
        }
        if(a[i]==b[i+1])
        {
            cout<<1<<endl;
            return;
        }
    }
    cout<<2<<endl;
}
signed main() {
    int t;
    cin>>t;
    while(t--)
    {
        solve();
    }
    return 0;
}

标签:std,int,namespace,long,寒假,using,include
From: https://www.cnblogs.com/godcy/p/18037144

相关文章

  • 寒假4
    A#include<bits/stdc++.h>usingnamespacestd;intmain(){inta,b,k;cin>>a>>b>>k;if(a>=b*k)cout<<"good\n";elsecout<<"bad\n";}B先看不能操作的时候就是1,ai石子变为1需要ai-1,求和为总消耗w=sum(ai......
  • 2024牛客寒假算法基础集训营1(补题)
    目录ABCDEFGHIKLAn的范围很小暴力直接\(O(n^3)\)直接做就行。我还傻的统计了一下前后缀,不过怎么写都行这道题。#include<bits/stdc++.h>#defineintlonglong#definerep(i,a,b)for(inti=(a);i<=(b);++i)#definefep(i,a,b)for(inti=(a);i>=(b);--i)#d......
  • 寒假学习25
    Scala数组Scala语言中提供的数组是用来存储固定大小的同类型元素,数组对于每一门编程语言来说都是重要的数据结构之一。声明数组变量并不是声明number0、number1、...、number99一个个单独的变量,而是声明一个就像numbers这样的变量,然后使用numbers[0]、numbers[1]、...、n......
  • 寒假学习23
    Scala异常处理Scala的异常处理和其它语言比如Java类似。Scala的方法可以通过抛出异常的方法的方式来终止相关代码的运行,不必通过返回值。抛出异常Scala抛出异常的方法和Java一样,使用throw方法,例如,抛出一个新的参数异常:thrownewIllegalArgumentException捕获异......
  • 寒假学习22
    Scala类和对象类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。我们可以使用new关键字来创建类的对象,实例如下:实例class Point(xc: Int,yc:......
  • 寒假学习24
    Scala字符串以下实例将字符串赋值给一个常量:实例object Test {  val greeting: String = "Hello,World!"  def main(args: Array[String]) {   println( greeting )  }}以上实例定义了变量greeting,为字符串常量,它的类型为 String(java.lang.S......
  • 2024牛客寒假算法基础集训营4
    2024牛客寒假算法基础集训营4A 柠檬可乐题意根据给定的\(a\)和\(b\),判断是否\(a\gek\timesb\)思路题意非常直接代码/*******************************|Author:AlwaysBeShine|Problem:柠檬可乐|Contest:NowCoder|URL:https://ac.nowcoder.com/acm/......
  • 2024牛客寒假算法基础集训营6 K 错综的统一 题解
    Question2024牛客寒假算法基础集训营6K错综的统一一个矩阵仅由"r",“e”,“d”组成一个矩阵区域是美丽的,当且仅当:在矩形区域内,任意横向或纵向取一个长度大于\(1\)的连续字串是,该字符串都不是回文的现在有\(Q\)次询问,每次给定一个矩阵,问最少修改多少字符(字符只能修改"r"......
  • 寒假总结3spark简介
    ApacheSpark是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UCBerkeleyAMPlab(加州大学伯克利分校的AMP实验室)所开源的类HadoopMapReduce的通用并行框架,Spark,拥有HadoopMapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不......
  • 牛客寒假4到6补题
    牛客寒假4:F:来点每日一题题意:给定一个长度为n的数组,任意选6个数,6个数得分为 ((a-b)*c-d)*e-f,问最大能得到多少分解:n*n的dp,暴力枚举每一个数字v[i],f[i]表示以第i个位置结尾的得分最大是多少 voidsolve(){intn;cin>>n;vector<int>v(n+10......