鱼C论坛

 找回密码
 立即注册
查看: 1770|回复: 3

ccf的题目

[复制链接]
发表于 2022-4-24 19:31:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 白牡丹秀色可餐 于 2022-4-24 22:23 编辑

第一块代码是我写的,第二块代码是网上找到的(测试是一百分),但不清楚为什么我的代码一直只有九十分,请问是有什么漏洞吗?(题目在下面)
  1. #include<stdio.h>

  2. #define N 100000
  3. int main()
  4. {
  5.     int a[N];
  6.     int n,k;
  7.     int b,c;
  8.     int count = 0;
  9.     a[0] = 1;
  10.     scanf("%d %d", &n,&k);
  11.     while (k--) {
  12.         scanf("%d %d", &b, &c);
  13.         if (a[c] != 1) {
  14.             count++;
  15.         }
  16.         a[b] = 1;
  17.     }
  18.     printf("%d", count);
  19.    
  20.    
  21.         return 0;
  22.    
  23. }
复制代码
  1. #include <iostream>
  2. #include <cstring>
  3. #include <algorithm>
  4. #include <cmath>
  5. using namespace std;

  6. const int N = 100010;

  7. bool a[N]; //记录该变量是否已经初始化
  8. int n, k;

  9. int main()
  10. {
  11.     cin >> n >> k;

  12.     a[0] = 1; //a[0]为常量,不需要初始化
  13.     int res = 0;
  14.     while (k --)
  15.     {
  16.         int x, y;
  17.         cin >> x >> y;

  18.         if (!a[y]) res ++; //右值未初始化,则答案加一
  19.         a[x] = 1; //另左值标记为已初始化
  20.     }
  21.     cout << res;
  22.     return 0;
  23. }
复制代码

                               
登录/注册后可看大图

最后发现是没有初始化数组a

题目.1

题目.1

题目.2

题目.2
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-4-24 20:11:29 | 显示全部楼层
if (a[c] == 0)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-24 22:22:18 | 显示全部楼层

我试了还是一样,最后好像啊没有初始化数组a
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-24 22:44:08 From FishC Mobile | 显示全部楼层
白牡丹秀色可餐 发表于 2022-4-24 22:22
我试了还是一样,最后好像啊没有初始化数组a

好吧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-24 10:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表