题解:P15050 [UOI 2023 II Stage] Pixel snail
LiuHongshen · · 题解
P15050 [UOI 2023 II Stage] Pixel snail 题解
题目传送门
题目描述
像素蜗牛是一种很容易在方格纸上画出的图形,它与符号 "@" 非常相似。
第
- 绘制一个“边框”——沿着边长为
k 的正方形的周边单元格被涂色。 - 绘制一个单元格,其左上角与边框的右下角重合。我们称这个单元格为“桥接”。
- 所有在边框外部且距离边框一个单元格的单元格被涂色。与此同时,与桥接单元格相邻的单元格(除了其左下角与桥接单元格的右上角重合的那个单元格:该单元格仍会被涂色)不会被涂色。
下图展示了第 1、2、3 和 4 阶的像素蜗牛。
:::align{center} :::
算法中第一、第二和第三步涂色的单元格分别用数字(1、2、3)标出。
编写一个程序,计算绘制第
输入格式
第一行包含一个整数
输出格式
输出一个数字——绘制第
做法分析
我们可以把这个图形抽象的变成两个圈加一个点,第一个圈的面积是。
第二个圈的面积是。
总面积公式便是。
代码
#include<bits/stdc++.h>
#define endl '\n'
#define kuaitou ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define baoliu(n) fixed<<setprecision(n)
using namespace std;
int main(){
kuaitou;
int n;//定义边长
cin>>n;//输入
if(n==1){//特判如果是1
cout<<"11";//直接输出答案
return 0;//完结散花?
}
cout<<8*n+2;//输出
return 0;//完结散花
}
AC记录