ccf1未初始化警告

计算机软件能力认证考试系统

感觉题目还蛮简单的,题目已经说的很清楚,要求右边出现的值在左边要出现过。

 思路:将左边出现的值装进set里,然后看右边的的值是否在左边出现过。

AC代码:

 

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

int main()
{
    int n,k,sum=0,num1,num2;
    set<int> stl;
    cin>>n>>k;
    for(int i=0;i<k;i++){
        cin>>num1>>num2;
        if(num2!=0&&stl.count(num2)==0)
            sum++;
        if(stl.count(num1)==0){
            stl.insert(num1);
        }
    }
    cout<<sum<<endl;
    return 0;
}

注意的点 ,还要判断是否为0

因为题目给出提示,x不等于0的,取不到

第二种快一点而且空间较小

 

#include<iostream>
#define N 100010
using namespace std;
bool a[N];
int main(){
    int n,k,ans=0;
    cin>>n>>k;
    a[0]=1;
    for(int i=0;i<k;i++){
        int x,y;
        scanf("%d %d",&x,&y);
        ans+=(!a[y]);
        a[x]=1;
    }
    cout<<ans<<endl;
    return 0;
}

为了提高在 CCF CSP(中国计算机学会计算机软件能力认证)考试中的表现,选择合适的题单和练习资源是关键。以下是根据已有信息整理的推荐题单和资源: ### 推荐刷题路线 1. **流处理类题目**:这类题目通常较为简单,适合入门练习,例如: - 201604-1 折点计数 - 201609-1 最大波动 - 201809-1 卖菜 - 201903-1 小中大 - 202203-1 初始化警告 - 201703-1 分蛋糕 - 201803-1 跳一跳 - 201909-1 小明种苹果 - 201909-2 小明种苹果(续) - 201912-1 报数 - 202012-1 期末预测之安全指数 - 202109-1 数组推导 - 202206-1 归一化处理 - 202112-1 序列查询 - 202112-2 序列查询新解 - 202209-1 如此编码 [^4] 2. **排序类题目**:排序是基础但重要的部分,可以尝试: - 201712-1 最小差值 - 201409-1 相邻数对 - 201612-1 中间数 [^4] 3. **模拟类题目**:这类题目通常需要较强的逻辑思维能力,例如: - 201812-1 小明上学 - 201812-2 小明放学 - 202006-1 线性分类器 - 201509-2 日期计算 - 201503-3 节日 [^4] ### 练习资源推荐 1. **历年真题题解**:有一份从201312到202312的所有前4题的满分题解集合,其中包含详细注释和思路解析,总共有132题,代码行数达到8000行,非常适合深入学习和理解。GitHub链接:https://github.com/jokerD888/ccf-csp [^1] 2. **在线模拟考试**:建议访问 CCF CSP 官方网站,通过“报名入口”进入模拟考试页面进行练习。这种方式可以让你熟悉正式考试的环境和流程 [^2] 3. **个人刷题记录**:有一个个人的刷题记录,涵盖了从2024年3月到2023年3月的题目,包括水题、STL、高斯消元、双向链表、质数筛、合数分解、前缀数组、字符串、几何等类型,所有题目均获得100分 [^3] ### 示例代码 以下是一个简单的 CCF CSP 题目解决方案示例,用于解决“折点计数”问题: ```python def count_turning_points(n, temperatures): if n < 3: return 0 count = 0 for i in range(1, n - 1): if (temperatures[i] > temperatures[i - 1] and temperatures[i] > temperatures[i + 1]) or \ (temperatures[i] < temperatures[i - 1] and temperatures[i] < temperatures[i + 1]): count += 1 return count # 示例输入 n = 5 temperatures = [1, 3, 2, 4, 1] print(count_turning_points(n, temperatures)) # 输出应该是2 ``` ###
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值