博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 1654 Area
阅读量:5961 次
发布时间:2019-06-19

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

POJ_1654

    由于多边形的点都是顺序走出来的,因此直接应用求多边形面积的公式即可。

#include
#include
#define zero 1e-8 #define MAXD 1000010 char b[MAXD]; int dx[] = {
0, -1, 0, 1, -1, 0, 1, -1, 0, 1}, dy[] = {
0, -1, -1, -1, 0, 0, 0, 1, 1, 1}; long long int det(int x1, int y1, int x2, int y2) {
return (long long int)x1 * y2 - (long long int)x2 * y1; } void solve() {
int i, j, k, x, y, px, py; long long int ans = 0; px = py = 0; for(i = 0; b[i] != '5'; i ++) {
k = b[i] - '0'; x = px + dx[k], y = py + dy[k]; ans += det(px, py, x, y); px = x, py = y; } ans = ans < 0 ? -ans : ans; if(ans % 2) printf("%lld.5\n", ans / 2); else printf("%lld\n", ans / 2); } int main() {
int t; scanf("%d", &t); while(t --) {
scanf("%s", b); solve(); } return 0; }

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

你可能感兴趣的文章
Go defer 知识点
查看>>
【本人秃顶程序员】如何在代码中应用设计模式
查看>>
当你凝视黑洞的时候,它已经被玩坏了
查看>>
fluent python 读书笔记 2--Python的序列类型2
查看>>
依赖冲突时的解决方法
查看>>
学习笔记5
查看>>
富人为什么越富,穷人为什么越穷
查看>>
电子商务java b2b b2c o2o平台
查看>>
(五)java spring cloud版b2b2c社交电商spring cloud分布式微服务-路由网关(zuul)
查看>>
零基础学小程序007---小程序获取用户openid
查看>>
两年摸爬滚打 Spring Boot,总结了这 16 条最佳实践
查看>>
Laravel 5 5 使用 Jwt Auth 实现 API 用户认证以及无痛刷新访问令牌
查看>>
专注人工智能未来 十年后百度可能完全不一样?
查看>>
阿里开发者招聘节 | 面试题14:如何实现两金额数据相加(最多小数点两位)...
查看>>
企业分布式微服务云SpringCloud SpringBoot mybatis(八)消息总线(Spring Cloud Bus)
查看>>
logback pattern
查看>>
推荐的JVM参数
查看>>
PHP类UTF8编码内的繁简转换-繁体-简体
查看>>
晒晒工作中的静态文件大小控制制度
查看>>
当存储已成白菜
查看>>