2101 Problem A Snake Filled

题目描述

“What a boring world!”
Julyed felt so bored that she began to write numbers on the coordinate paper. She wrote a “0” on the center, then wrote the follow numbers clockwise, which looked like a snake as below.
 
“Damn! I have fulfilled the paper!”
Julyed was looking at paper. Suddenly, she began to feel curious.
“What is the nth number on the positive axis of Y axis?”
She asked tomriddly for the question. But tomriddly was so busy that he ignored Julyed. So now you have to solve this problem.

输入

Multiple test cases.
The first line contains an integer T (T <= 50), indicating the number of test cases.
Then T lines follows, one line per case. Each line contains a positive integer n (n <= 3000).

输出

One line per case. An integer indicates the nth number on the positive axis of Y axis.

样例输入

3
1
2
18

样例输出

5
18
1314

解题心得:
  输入0,1,2...,然后对应输出黄色标记的数字。此题纯靠找规律即可解答。
  我找到的规律是这样的:0,5,18,39 ,每次增加的数add[1]=4,add[2]=13,add[3]=21,然后发现每个add之间都是增加8;
  下面是代码。

代码:
#include <iostream>
#include <cstdio>
#include <cstring>

using namespace std;

int main()
{
    int n;
    int add=5;
    int a[3005];
    int z=8;
    int s=0;
    int ii;
    memset(a,0,3005*sizeof(int));
    cin>>n;
    for(int i=0;i<n;i++){
        for(int j=1;j<=3000;j++){
            s+=add;
            a[j]=s;
            add+=z;
        }
        s=0;
        add=5;
        scanf("%d",&ii);
        printf("%d\n",a[ii]);
    }
    return 0;
}

 

 
全部评论

相关推荐

2025-12-27 22:21
门头沟学院 Java
点赞 评论 收藏
分享
2025-11-13 14:37
门头沟学院 Java
程序员牛肉:是的,我觉得你最先需要的是多接触计算机圈子。我感觉你这个写的太幼稚了,根本没换位思考面试官。 你对实习的描述还是我写了前后端,我写了Restful接口,我用了EChatrs。你这让面试官怎么问你?问你什么是前后端?问你什么是Restful?讲真的兄弟,你这个简历在面试官眼里就是啥也不懂的好学生。所以一定要尽快加入一个圈子跟大家多聊聊,看看正儿八经的简历是怎么写的。 可以看一下我首页的简历怎么写那篇文章来学一下,你这里面的坑点我那篇文章里面都有讲过。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
2025-12-19 10:45
牛客68819587...:按照品喜喜的时薪 你这就是白菜价 别去奥 别人都是 40-50k *24
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务