博客
关于我
D. Timofey and rectangles[四色定理]
阅读量:529 次
发布时间:2019-03-08

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

关于数学中的三个大猜想之一,歌德巴赫猜想和费马大定理,以及另外一个尚未确定的数学猜想,由某大学生提出。

题意:给n个矩形的坐下角坐标和右上角坐标。问如何用四种颜色进行染色,使得相邻矩形颜色不同。

思路:一定有解。

  • 对左下角坐标进行讨论
  • 奇偶偶奇偶偶奇奇

    如果左下角为奇偶,那么左下角也是奇偶的矩形一定不会与这个矩形相邻(通过绘制坐标图证明四个角的坐标奇偶性)。

    #include 
    #define PI acos(-1.0)#define pb push_back#define F first#define S second#define debug puts#define setp cout << fixed << setprecision(15)#define FAST_IO ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); using namespace std;typedef long long ll;const int N = 2e3 + 3;const int MOD = 998244373;ll rain[N], dp[N], u[N];int main(void) { FAST_IO; cout << "YES" << endl; for (int i = 1; i <= n; i++) { int a, b, c, d; cin >> a >> b >> c >> d; if (a < 0) a = -a; if (b < 0) b = -b; if (c < 0) c = -c; if (d < 0) d = -d; if (a % 2 == 1 && b % 2 == 1) cout << 1 << endl; else if (a % 2 == 1 && b % 2 == 0) cout << 2 << endl; else if (a % 2 == 0 && b % 2 == 0) cout << 3 << endl; else if (a % 2 == 0 && b % 2 == 1) cout << 4 << endl; } return 0;}

    该代码为何?它是否正确?如何分析其功能?这是什么编程问题?我们需要清理代码,修正错误,提高可读性。代码中涉及的定义和函数是否合理?外部调用的变量是否正确?我们需要重新审视并优化这段代码。代码看起来似乎用于编程竞赛中的数论题,但目前的结构需要重新调整。我们需要遵循严格的编程规范进行修正。

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

    你可能感兴趣的文章
    Open×××有线网络时使用正常,无线网络时使用报错的解决方案
    查看>>
    Opera Mobile Classic Emulator
    查看>>
    Operation not supported on read-only collection 的解决方法 - [Windows Phone开发技巧系列1]
    查看>>
    OperationResult
    查看>>
    Operations Manager 2007 R2系列之仪表板(多)视图
    查看>>
    operator new and delete
    查看>>
    operator new 与 operator delete
    查看>>
    operator() error
    查看>>
    OPPO K3在哪里打开USB调试模式的完美方法
    查看>>
    oppo后端16连问
    查看>>
    Optional类:避免NullPointerException
    查看>>
    Optional讲解
    查看>>
    ORA-00932: inconsistent datatypes: expected - got NCLOB【ORA-00932: 数据类型不一致: 应为 -, 但却获得 NCLOB 】【解决办法】
    查看>>
    ORA-00942 表或视图不存在
    查看>>
    ORA-01034: ORACLE not available
    查看>>
    ORA-01152: 文件 1 没有从过旧的备份中还原
    查看>>
    ORA-01207:文件比控制文件更新 - 旧的控制文件
    查看>>
    ORA-01795: 列表中的最大表达式数为 1000
    查看>>
    ORA-06575: 程序包或函数 NO_VM_DROP_PROC 处于无效状态
    查看>>
    ORA-08102的错误
    查看>>