zoukankan      html  css  js  c++  java
  • POJ 1471 模拟?

    题意:求最大无坏点三角形
    思路:
    模拟?
    (为什么我模拟过了。。。)
    有人用 DP,有人用 搜索。。。

    // by SiriusRen
    #include <cstdio>
    #include <cstring>
    #include <iostream>
    using namespace std;
    char a[222][222];
    int cases=0,n,ans,answer,flag;
    int main(){
        while(scanf("%d",&n)&&n){
            answer=ans=0;
            memset(a,0,sizeof(a));
            for(int i=n;i>=1;i--)
                for(int j=1;j<i<<1;j++)
                    cin>>a[i][j];
            for(int i=1;i<=n;i++)
                for(int j=1;j<i<<1;j++){
                    flag=0;
                    for(int k=1;;k++){
                        int jy=k*2-2;
                        if(j&1){
                            for(int l=j;l<=j+jy;l++)
                                if(a[i+k-1][l]=='#'||!a[i+k-1][l]){ans=max(ans,k-1);flag=1;break;}
                        }
                        else{
                            for(int l=j;l>=j-jy;l--)
                                if(a[i-k+1][l]=='#'||!a[i-k+1][l]){ans=max(ans,k-1);flag=1;break;}
                        }
                        if(flag)break;
                    }
                }
            for(int i=1;i<=ans;i++)answer+=(i*2-1);
            printf("Triangle #%d
    The largest triangle area is %d.
    
    ",++cases,answer);
        }
    }

    这里写图片描述

  • 相关阅读:
    java oop
    traceroute
    ping
    ICMP Internet控制报文协议
    window,centos双系统坏了
    bcm53344 gpio驱动分析
    ioctl参数cmd=2错误
    BCM_GPIO驱动测试
    C++ 类和对象
    C++ 内存管理
  • 原文地址:https://www.cnblogs.com/SiriusRen/p/6532381.html
Copyright © 2011-2022 走看看