博客
关于我
CodeForces - 545A Toy Cars
阅读量:638 次
发布时间:2019-03-14

本文共 1705 字,大约阅读时间需要 5 分钟。

需要找出所有在碰撞中没有翻转的车,并通过矩阵来确定每辆车的状态。为了高效解决这个问题,首先遍历矩阵中的每一个元素,根据条件判断每辆车是否翻转。然后按照条件记录所有好的车。最后,将这些车按顺序输出。

步骤解析:

  • 读取输入:获取输入数据,包括n和矩阵A。
  • 初始化结果数组:创建一个数组来记录每辆车的状态。
  • 遍历矩阵:逐个检查矩阵中的每个元素。
    • 对于A[i][j] = 0:双方均未翻转,两人皆为好车。
    • 对于A[i][j] = 1:i翻转,另一人好车。
    • 对于A[i][j] = 2:j翻转,i为好车。
    • 对于A[i][j] = 3:双方皆翻转,双方为好车。
  • 统计并输出结果:收集所有好车的索引,按照顺序输出数量和索引列表。
  • 代码示例:

    #include 
    int main() { int n; scanf("%d", &n); int a[1001][1001]; for (int i = 1; i <= n; ++i) { scanf("%d %d %d", &a[i][1], &a[i][2], &a[i][3]); } int good[1001]; int count = 0; for (int i = 1; i <= n; ++i) { for (int j = 1; j <= n; ++j) { if (i == j) continue; if (a[i][j] == 0) { good[i] = 1; good[j] = 1; count += 2; } else if (a[i][j] == 1) { good[i] = 1; count += 1; } else if (a[i][j] == 2) { good[j] = 1; count += 1; } else if (a[i][j] == 3) { good[i] = 1; good[j] = 1; count += 2; } } } int result_count = 0; for (int i = 1; i <= n; ++i) { if (good[i]) { result_count++; } } if (result_count == 0) { printf("0"); } else { printf("%d", result_count); printf(" "); for (int i = 1; i <= n; ++i) { if (good[i]) { printf("%d", i); if (i < n) printf(" "); } } } return 0;}

    代码解释:

    • 读取输入:首先读取n的值,然后读取每行的三个整数,存储在数组a中。
    • 初始化结果数组:good数组用于记录每辆车是否为好车,初始值为0。
    • 遍历每对i,j:
      • 如果i等于j,主对角线处理,但题目指出这些情况没有碰撞,所以跳过。
      • 根据矩阵中的不同值更新good数组。
    • 统计并输出结果:遍历good数组,统计好车数量并输出结果。

    通过以上步骤,可以高效地解决问题,找到所有在碰撞中没有被翻转的车,并按照要求输出结果。

    转载地址:http://ccxoz.baihongyu.com/

    你可能感兴趣的文章
    mysql中json_extract的使用方法
    查看>>
    mysql中kill掉所有锁表的进程
    查看>>
    mysql中like % %模糊查询
    查看>>
    MySql中mvcc学习记录
    查看>>
    mysql中null和空字符串的区别与问题!
    查看>>
    MySQL中ON DUPLICATE KEY UPDATE的介绍与使用、批量更新、存在即更新不存在则插入
    查看>>
    MYSQL中TINYINT的取值范围
    查看>>
    MySQL中UPDATE语句的神奇技巧,让你操作数据库如虎添翼!
    查看>>
    Mysql中varchar类型数字排序不对踩坑记录
    查看>>
    MySQL中一条SQL语句到底是如何执行的呢?
    查看>>
    MySQL中你必须知道的10件事,1.5万字!
    查看>>
    MySQL中使用IN()查询到底走不走索引?
    查看>>
    Mysql中使用存储过程插入decimal和时间数据递增的模拟数据
    查看>>
    MySql中关于geometry类型的数据_空的时候如何插入处理_需用null_空字符串插入会报错_Cannot get geometry object from dat---MySql工作笔记003
    查看>>
    mysql中出现Incorrect DECIMAL value: '0' for column '' at row -1错误解决方案
    查看>>
    mysql中出现Unit mysql.service could not be found 的解决方法
    查看>>
    mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
    查看>>
    Mysql中各类锁的机制图文详细解析(全)
    查看>>
    MySQL中地理位置数据扩展geometry的使用心得
    查看>>
    Mysql中存储引擎简介、修改、查询、选择
    查看>>