首页 > 其他分享 >CSP2023-03

CSP2023-03

时间:2023-05-01 22:22:27浏览次数:42  
标签:03 x1 int CSP2023 x2 && y1 y2

第一题

 直接满分了:

#include <iostream>
using namespace std ;

const int N = 1e6 ; 

int n,a,b ; 

int panduan(int x1,int y1,int x2, int y2, int a,int b)
{
    int c,k ; 
    if( x2<0 || y2<0 || x1>a || y1>b ) return 0 ; // 在外侧
    else {
        // 先判断x 左 中 右
        if( x1<=0 && x2<=a )  c = x2 ;
        else if( x1>=0 && x2<=a ) c = x2-x1 ; 
        else if( x1>=0 && x2>=a) c = a-x1 ;
    
        // 判断 y 上中下
        if( y1>=0 && y2>=b) k = b-y1 ;
        else if(y1>=0 && y2<=b )  k = y2-y1; 
        else if(y1<=0 && y2<=b) k = y2 ; 
    }
    return c*k ;
}

int main(){
    cin>>n>>a>>b ; 
    int x1,y1,x2,y2 ; 
    int sum =0 ;
    for(int i=0; i<n ; i++)
    {
        scanf("%d%d%d%d",&x1,&y1,&x2,&y2) ;    
        sum += panduan(x1,y1,x2,y2,a,b) ; 
    }
    cout<<sum<<endl ; 
    
    return 0 ; 
}

第二题

 第一次提交只拿了 70分, 出现了超时错误,应该是每次都遍历所有点的问题

#include <iostream>
#include <algorithm>
using namespace std ;

const int N = 1e6 ; 

int n,m,k ; 

struct tian{
    int t,c ;
}t[N] ; 

bool cmp(tian a, tian b)
{
    return a.t>b.t ; 
}
int main(){
    cin>>n>>m>>k ; 
    for(int i=0; i<n; i++) 
        scanf("%d%d", &t[i].t, &t[i].c) ; 
    sort(t,t+n,cmp) ;  // 按照耗时进行排序
    int max = t[0].t ; // 标记最大耗时 
    while(m>=0)
    {
        max -- ;    // 提出要求
        if( max < k) break ; // 达到最低线
        for(int i=0 ; i<n ; i++)
        {
            if( t[i].t > max)
            {
                t[i].t-- ;  
                m -= t[i].c ;
            }
        }
    } 
    cout<<max+1 ;   
    return 0 ; 
}

老师给的代码,可以100

 

标签:03,x1,int,CSP2023,x2,&&,y1,y2
From: https://www.cnblogs.com/zundicai/p/17367115.html

相关文章

  • 当前标识(IIS APPPOOL\XX)没有对“C:\Windows\Microsoft.NET\Framework64\4.0.30
    当前标识(IISAPPPOOL\WMS.APP)没有对“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\TemporaryASP.NETFiles”的写访问权限。解决此问题为在使用Windows的IIS搭建服务器时,遇到的问题。在网上尝试了各种解决方法后,终于找到了一个可以解决问题的方法,以管理员身份运行命令......
  • Elasticsearch专题精讲——What's new in 8.7?
    What'snewin8.7?https://www.elastic.co/guide/en/elasticsearch/reference/8.7/release-highlights.html,ortherversions:8.6 | 8.5 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0Timeseries(TSDS)GA(时间序列)TimeSeriesDataStream(TSDS)isafeatureforoptimi......
  • 7-003-(LeetCode- 62) 不同路径
    1.题目读题 考查点 2.解法思路 代码逻辑 具体实现113.总结......
  • Codeforces Gym 103439D - LIS Counting(猜结论+状压)
    一道需要一些猜结论技巧的中档题。首先突破口在于排列长度恰好等于不是额外输入的某个数\(k\)而是LDS与LIS的乘积,这显然启示我们去找一些性质。根据dilworth定理,最长反链等于最小链覆盖,故LIS的长度,就是最少需要的递减数列的个数使得每个元素被覆盖至少一次,而每个递减数......
  • mapreduce测试时出现INFO client.RMProxy: Connecting to ResourceManager at 0.0.0.0
    如运行wordcount后出现INFOclient.RMProxy:ConnectingtoResourceManagerat0.0.0.0:8032长时间不动,我尝试修改我的yarn-site.xml配置后可以成功运行  <property>    <name>yarn.nodemanager.aux-services</name>    <value>mapreduce_shuffle</value>  </pr......
  • 【python】if __name__=='__main__'
    当我们想一个python文件作为脚本直接执行时才执行某段代码,而被其他python文件调用时不执行那段代码,就可以通过if__name__=='__main__'实现。if__name__=='__main__'只有在python文件作为脚本执行时才为True。python文件直接执行时__name__值为'__main__',被别的文件调用......
  • 构建之法读书笔记03
    第二章个人技术和流程2.1单元测试①重要的单元测试:有效解决程序员对模块功能的误解、疏忽或不了解模块的变化之类的问题,使自己负责的模块功能定义尽量明确,模块的质量得到稳定的、量化的保证。②好的单元测试的标准:在最基本的功能/参数上验证程序的正确性单元测试必须由最熟......
  • 构建之法阅读笔记03
    软件架构是什么?软件架构是指对软件系统的整体结构和组织方式的定义。它包括系统的各个组成部分、它们之间的关系、以及系统的行为和性能等方面。软件架构的重要性软件架构是软件开发的基础,它决定了系统的可维护性、可扩展性、可靠性和安全性等方面。良好的软件架构能够降低系统维......
  • 1033. 移动石子直到连续
    1033.移动石子直到连续三枚石子放置在数轴上,位置分别为a,b,c。每一回合,你可以从两端之一拿起一枚石子(位置最大或最小),并将其放入两端之间的任一空闲位置。形式上,假设这三枚石子当前分别位于位置x,y,z且x<y<z。那么就可以从位置x或者是位置z拿起一枚石子,并将该石......
  • PAT Advanced 1003. Emergency
    PATAdvanced1003.Emergency1.ProblemDescription:Asanemergencyrescueteamleaderofacity,youaregivenaspecialmapofyourcountry.Themapshowsseveralscatteredcitiesconnectedbysomeroads.Amountofrescueteamsineachcityandthelen......