正方形_找规律

Posted 多一份不为什么的坚持

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正方形_找规律相关的知识,希望对你有一定的参考价值。

问题 G: 正方形

时间限制: 1 Sec  内存限制: 64 MB
提交: 22  解决: 16
[提交][状态][讨论版]

题目描述

又到暑假啦,Conan, Ayumi, Mitsuhiko, Genta一起到Hakase家愉快玩耍(然而你却不行……)。

Ayumi, Mitsuhiko, Genta依次开始画正方形(显然Ai是不会参加这个活动的),一人一笔,画完一个,以上一个正方形四边中点为顶点接着画啊画啊画啊……最后一共画了k个正方形。最终他们想知道自己各画了多长。

输入

输入一行包含两个整数N,K,分别表示第一个正方形的边长,正方形个数。

对于100%的数据满足N≤1000,K≤1000。

 

输出

输出一行,三个实数,分别表示Ayumi, Mitsuhiko, Genta画的长度,答案保留3位小数

样例输入

100 2

样例输出

270.711 241.421 170.711
#include <iostream>
#include <cstdio>
#include <cmath>

using namespace std;

double z[10000];
int p[10000];

int main()
{
    int a,b;
    int cou=0;
    double suma=0;
    double sumb=0;
    double sumc=0;

    scanf("%d%d",&a,&b);
    double t=a;
    for(int i=0;i<b;i++){
        for(int j=0;j<4;j++){
            z[cou++]=t;
        }
        t=sqrt((t/2)*(t/2)*2);
    }
    cou=0;
    for(int i=0;i<1001;i++){
        for(int j=1;j<=3;j++){
            p[cou++]=j;
        }
    }
    for(int i=0;i<b*4;i++){
        if(p[i]==1){
            suma+=z[i];
            continue;
        }
        if(p[i]==2){
            sumb+=z[i];
            continue;
        }
        if(p[i]==3){
            sumc+=z[i];
            continue;
        }
    }
    printf("%.3f %.3f %.3f",suma,sumb,sumc);
    return 0;
}

 

以上是关于正方形_找规律的主要内容,如果未能解决你的问题,请参考以下文章

PAT1049-----枚举法,找规律题,注意降低时间复杂度

Python找规律_01

JavaScript笔试题(js高级代码片段)

Candy Distribution_找规律

C. The Third Problem(找规律)

The Cow Lineup_找规律