首页 > 其他分享 >D - AtCoder Wallpaper(求图形面积)

D - AtCoder Wallpaper(求图形面积)

时间:2024-05-22 16:55:30浏览次数:21  
标签:AtCoder cnt return int Wallpaper else ans 图形

思路:求f(c, d) + f(a, b) - f(a, d) - f(c, b);

代码:

int f(int x, int y){
    if(y % 2 == 0){
        y = y / 2;
        int ans = y * (x / 4) * 8;
        x %= 4;
        if(x == 1){
            ans += y * 3;
        }else if(x == 2){
            ans += y * 6;
        }else if(x == 3){
            ans += y * 7;
        }
        return ans;
    }else{
        y /= 2;
        int ans = y * (x / 4) * 8 + 2 * (x / 4) * 2;
        x %= 4;
        if(x == 1){
            ans += y * 3 + 2;
        }else if(x == 2){
            ans += y * 6 + 3;
        }else if(x == 3){
            ans += y * 7 + 3;
        }
        return ans;
    }
}


void solve(){
    int a, b, c, d;
    cin >> a >> b >> c >> d;
    if(a < 0){
        int cnt = (-a + 3) / 4;
        a += cnt * 4;
        c += cnt * 4; 
    }
    if(b < 0){
        int cnt = (-b + 3) / 4;
        b += cnt * 4;
        d += cnt * 4;
    }
    cout << f(c, d) + f(a, b) - f(a, d) - f(c, b);
}

 

标签:AtCoder,cnt,return,int,Wallpaper,else,ans,图形
From: https://www.cnblogs.com/litianyu1969/p/18206627

相关文章

  • 图形验证码uni版
    在uniapp中使用平常vue中的图形验证码,发现有些功能如getContext()等方法无法使用,网上借鉴的地址https://blog.csdn.net/DreamPossible20/article/details/1309727351、在src/utils目录下新建文件mcaptcha.js//mcaptcha.jsexportclassMcaptcha{constructor(option......
  • CentOS7 图形界面管理(7.9)
    1.关于/etc/inittab网上很多都说用着个配置cat/etc/inittab大概意思就是说,这种设置方式已经不再使用2.建议使用systemctl用法systemctlget-default#multi-user.target#相当于init3#graphical.target#相当于init6#直接设置systemctlset-defaultmulti-us......
  • Atcoder 题目选做(五)
    \(\text{ByDaiRuiChen007}\)1.[ARC159E]DifferenceSumQueryProblemLink给定\(n,m\),定义\(x\in[1,n]\)的深度\(f(x)\)为:初始\([l,r]=[1,n]\)。第\(i\)次操作求出\(l,r\)按\(a_{i\bmodm}:b_{i\bmodm}\)的比例的中点\(mid\)。如果\(x=mid\),那么......
  • Atcoder 题目选做(六)
    \(\text{ByDaiRuiChen007}\)1.[ARC162E]StrangeConstraintsProblemLink给定\(a_1\sima_n\),求有多少\(b_1\simb_n\)满足:\(b_i\in[1,n]\),且\(i\)和\(b_i\)的出现次数均不超过\(a_i\)。数据范围:\(n\le500\)。设\(\gek\)的\(a_i\)有\(c_k......
  • Atcoder 题目选做(四)
    \(\text{ByDaiRuiChen007}\)1.[AGC059C]GuessingPermutationforasLongasPossibleProblemLink给定\(\dfrac{n\times(n-1)}2\)个\([1,n]\)中的二元对的顺序,求有多少个\(n\)阶排列\(P\)使得按顺序询问到每个\((u,v)\)之前无法确定\(P_u,P_v\)大小关系......
  • ABC 354 (atcoder beginer 354) D、E、F
     D 检查:1.有可能是推导式有问题,比如-/+写错2.x,yA、B、C、D顺序可能搞反了不要盲目调试,先用人眼看一下代码的情况,找一下错误 很简单的找规律的题目。很不能理解过的人,就这些。x方向,y方向,都是4行/列,一个规律的循环。 求(0,0)到(x,y)中的黑色块:第0-3行分别求出黑色......
  • AtCoder abc354E
    原题链接ProblemStatementTakahashiandAokiareplayingagameusing\(N\)cards.Thefrontsideofthe\(i\)-thcardhas\(A_i\)writtenonit,andthebacksidehas\(B_i\)writtenonit.Initially,the\(N\)cardsarelaidoutonthetable.Wit......
  • AtCoder Beginner Contest 354
    A-ExponentialPlant(abc354A)题目大意某星球上的植物,初始高\(0\),然后每天依次增长\(1,2,4,8,...\),问哪天就高过身高为\(h\)的高桥。解题思路因为是指数级别长高,枚举一下天数即可,由于\(h\leq10^9\),因此天数不会超过\(32\)天。神奇的代码#include<bits/stdc++.h>u......
  • Atcoder 题目选做(二)
    \(\text{ByDaiRuiChen007}\)*1.[ARC145F]ModuloSumofIncreasingSequencesProblemLink给定\(n,m,p\),对于所有\(r\in[0,p)\)求有多少长度为\(n\),值域\([0,m]\)的单调不降序列数组在\(\bmod\p\)意义下的序列和为\(r\)。数据范围:\(n,m\le10^6,p\le500\)......
  • Qt/C++音视频开发74-合并标签图形/生成yolo运算结果图形/文字和图形合并成一个/水印滤
    一、前言在使用yolo做人工智能运算后,运算结果除了一个方框,还可能需要增加文字显示在对应方框上,以便标记是何种物体,比如显示是人还是动物,或者还有可能追踪人员,显示该人员的姓名。这种应用场景非常普遍,而且非常有必要,可以非常直观的直接看到对应移动的物体是什么。当然也有个缺点,就......