解题思路:
以坐标绝对值最大的划分正方形个数,之前的都是正方形
参考代码:
#include<bits/stdc++.h> using namespace std; #define int long long int x,y,q,ans; int main() { cin>>x>>y; int q=max(abs(x),abs(y)); ans=1+4*(q*(q-1)); if(x==-q&&y==-q) ans=ans+8*q-1; else if(x==-q) ans=ans+(y+q-1); else if(y==q) ans=ans+(2*q-1+x+q); else if(x==q) ans=ans+(4*q-1+q-y); else if(y==-q) ans=ans+(6*q-1+q-x); cout<<ans; }
0.0分
1 人评分
产生数 (C++代码)(大数乘法也是可以避免的么hhhh)浏览:1512 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:695 |
IP判断 (C语言代码)浏览:1416 |
C语言程序设计教程(第三版)课后习题12.6 (C语言代码)浏览:794 |
【绝对值排序】 (C++代码)浏览:672 |
简单的a+b (C语言代码)浏览:530 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:756 |
简单的a+b (C语言代码)浏览:694 |
C语言训练-求PI* (C语言代码)浏览:614 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:647 |