【模拟】正方形
正方形
題目大意:
有三個人,一人一筆的畫正方形,每個正方形是上一個正方形每條邊上的中點連接而成的,求每個人畫了多長
原題:
題目描述
又到暑假啦,Conan, Ayumi, Mitsuhiko, Genta一起到Hakase家愉快玩耍(然而你卻不行……)。
Ayumi, Mitsuhiko, Genta依次開始畫正方形(顯然Ai是不會參加這個活動的),一人一筆,畫完一個,以上一個正方形四邊中點為頂點接著畫啊畫啊畫啊……最后一共畫了k個正方形。最終他們想知道自己各畫了多長。
【樣例解釋】
輸入
輸入一行包含兩個整數N,K,分別表示第一個正方形的邊長,正方形個數。
輸出
輸出一行,三個實數,分別表示Ayumi, Mitsuhiko, Genta畫的長度,答案保留3位小數。
輸入樣例
100 2輸出樣例
270.711 241.421 170.711說明
【數據規模與約定】
對于100%的數據滿足,。
解題思路:
模擬每一個正方形,畫這個正方形第一條線的人就是畫第四條直線的人,以此類推即可
代碼:
#include<cstdio> #include<iostream> #include<cstring> #include<cmath> using namespace std; int n,k; double l,a[5]; int main() {scanf("%lf %d",&l,&n);for (int i=1;i<=n;++i){k=k%3+1;//每個正方形的第一條線的繪畫者是按1,2,3,1,2,3的順序的a[1]+=l;//相加,每個人都一定有畫到a[2]+=l;a[3]+=l;a[k]+=l;//最后一條線l=sqrt((l/2)*(l/2)*2);//勾股定理}printf("%.3lf %.3lf %.3lf",a[1],a[2],a[3]);//輸出 }總結
- 上一篇: 【Floyed】小萨的烦恼(ssl 16
- 下一篇: iso文件怎么打开 大家一起来学习一下吧