• poj1654


    给出八方向行走方案求路线圈出的面积。

    计算面积时总是算二倍的面积,这样就可以处理0.5的问题。

    View Code
    #include <iostream>
    #include
    <cstdio>
    #include
    <cstdlib>
    #include
    <cstring>
    #include
    <cmath>
    using namespace std;

    int main()
    {
    //freopen("t.txt", "r", stdin);
    int t;
    scanf(
    "%d", &t);
    getchar();
    while (t--)
    {
    long long ans = 0;
    int x = 0;
    int y = 0;
    char ch;
    while (ch = getchar(), ch != '5')
    {
    switch (ch)
    {
    case '1':
    ans
    -= y * 2 - 1;
    x
    --;
    y
    --;
    break;
    case '2':
    y
    --;
    break;
    case '3':
    ans
    += y * 2 - 1;
    x
    ++;
    y
    --;
    break;
    case '4':
    ans
    -= y * 2;
    x
    --;
    break;
    case '6':
    ans
    += y * 2;
    x
    ++;
    break;
    case '7':
    ans
    -= y * 2 + 1;
    x
    --;
    y
    ++;
    break;
    case '8':
    y
    ++;
    break;
    case '9':
    ans
    += y * 2 + 1;
    x
    ++;
    y
    ++;
    break;
    }
    }
    getchar();
    if (ans < 0)
    ans
    = -ans;
    if (ans & 1)
    cout
    << ans / 2 << ".5" << endl;
    else
    cout
    << ans / 2 << endl;
    }
    return 0;
    }

  • 相关阅读:
    存储过程
    .Net经典面试题
    《锋利的Jquery》
    WPF-1
    ios-5-类别和协议
    ios-4-创建单例模式
    ios-3-简单内存管理
    ios-2
    ios -1
    <<ASP.NET MVC4 Web编程>>笔记
  • 原文地址:https://www.cnblogs.com/rainydays/p/2081801.html
Copyright © 2020-2023  润新知