ACdream1008:A Very Easy Triangle Counting Game

Problem Description

Speedcell and Shoutmon love triangles very much.One day,they are playing a game named “Triangle Counting”.

In this game,Speedcell draws a round,and draws N points on the circumference of the round evenly,and marks them as 1,2,...,N.

Then Speedcell connects these points using the following rules:

Step 1: Connect the first point with the third point,and connect the third point with the 5th point,...,connect the ith point with the

(i+2)th point(cycling when needed)......It can’t be stopped until we get back to the first point.

Step 2: If there exists some points which don’t be connected still,choose one of them(if marked “i”),and connect it with the

(i+2)th point,then the (i+4)th point as Step1.......If we get back to the ith point,Step 2 will be stopped.

Step 3: Connect all the points as the order 1,2,...,N,1.

Now Speedcell wants to let Shoutmon count the number of triangles on the figure.

Input

The first line of input contains T (T≤1000),indicating the number of cases.

Then T lines follow.Each line an integer N(1<=N<=1000),indicating the number of points.

Output

Each case a line,and output the case number first,then a single integer,indicating the number of triangles.

The answer should be moduloed by 20121111.

Sample Input

3
1
4
6

Sample Output

Case #1: 0
Case #2: 8
Case #3: 32

Source

Shoutmon

Manager

nanae

#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
const int mod = 20121111;

int main()
{
    int n,cas = 1,t,ans;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d",&n);
        if(n<3)
            ans = 0;
            else if(n == 3)
            ans = 1;
        else if(n == 4)
            ans = 8;
        else if(n == 5)
            ans = 35;
        else if(n == 6)
            ans = 32;
        else
            ans = 5*n;
        printf("Case #%d: %d\n",cas++,ans%mod);
    }

    return 0;
}

ACdream1008:A Very Easy Triangle Counting Game

时间: 2024-10-12 16:31:45

ACdream1008:A Very Easy Triangle Counting Game的相关文章

acdream.A Very Easy Triangle Counting Game(数学推导)

A - A Very Easy Triangle Counting Game Time Limit:1000MS     Memory Limit:64000KB     64bit IO Format:%lld & %llu Submit Status Practice ACdream 1008 Description Speedcell and Shoutmon love triangles very much.One day,they are playing a game named “T

A Very Easy Triangle Counting Game

题意:在圆上取n个点,相邻两个点之间连线,(注意,n和1相邻),然后所有点对(i ,i+2)相连,问能形成的不同的三角形有多少个? 思路:找规律 n=3,cnt=1; n=4,cnt=8; n=5 cnt=35    (5*2+5*2+ 5+5+5); n=6 cnt= 32   (6*2+6*2+ 6+2); n=7,cnt=35   (7*2+7*2+7); n=8, cnt=40   (8*2+8*2+8) n>6;cnt=5*n; AC代码: 1 #include<stdlib.h&g

[Usaco2010 OPen]Triangle Counting 数三角形

[Usaco2010 OPen]Triangle Counting 数三角形 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 394  Solved: 198[Submit][Status][Discuss] Description 在一只大灰狼偷偷潜入Farmer Don的牛群被群牛发现后,贝西现在不得不履行着她站岗的职责.从她的守卫塔向下瞭望简直就是一件烦透了的事情.她决定做一些开发智力的小练习,防止她睡着了.想象牧场是一个X,Y平面的网格.她将

UVA 11401 - Triangle Counting(数论+计数问题)

题目链接:11401 - Triangle Counting 题意:有1,2,3....n的边,求最多能组成的三角形个数. 思路:利用三角形不等式,设最大边为x,那么y + z > x 得 x - y < z < x 然后y取取值,可以从1取到x - 1,y为n时候,有n - 1个解,那么总和为0 + 1 + 2 +...+ (x - 2) = (x - 1) * ( x- 2) / 2; 然后扣除掉重复的y = z的情况,在y > x / 2时,每个y取值会出现一次y = z.

UVA - 11401 - Triangle Counting (递推!)

UVA - 11401 Triangle Counting Time Limit: 1000MS Memory Limit: Unknown 64bit IO Format: %lld & %llu Submit Status Description Problem G Triangle Counting Input: Standard Input Output: Standard Output You are given n rods of length 1, 2-, n. You have

UVA Triangle Counting 11401【几何+数学】

11401 - Triangle Counting Time limit: 1.000 seconds 题意:给你n个线段,长度1-n.问可以组成多少不同的三角形 解题思路: 设最大边长为x的三角形有C(x)个,另外两条边长分别为y和z,根据三角不等式有y+z>x.所以z的范围是x-y < z < x. ①根据这个不等式,当y=1时x-1 < z < x,无解:y=2时有一个解(z=x-1):y=3时有两个解(z=x-1或者z=x-2)--直到y=x-1时有x-2个解.根据等

uva 11401 - Triangle Counting(数论)

题目链接:uva 11401 - Triangle Counting 题目大意:有多少种方法可以从1,2,3...n中选出3个不同的数组成三角形,给出n,求种数. 解题思路:加法原理,设最大边为x的三角形有c(x)个,那么另外两条边长分别为y和z,根据三角形的形式可以的y+z>x,所以z的范围即为x?y<z<x 根据这个不等式可以得到每个y值所对应的z值个数,为等差数列,所以 c(x)=(x?1)?(x?2)2??x?12?2 然后根据递推:f(n)=∑i=1nc(i) 代码 #incl

bzoj 1914: [Usaco2010 OPen]Triangle Counting 数三角形 容斥

1914: [Usaco2010 OPen]Triangle Counting 数三角形 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 272  Solved: 143[Submit][Status] Description 在 一只大灰狼偷偷潜入Farmer Don的牛群被群牛发现后,贝西现在不得不履行着她站岗的职责.从她的守卫塔向下瞭望简直就是一件烦透了的事情.她决定做一些开发智力的小练习,防止她睡 着了.想象牧场是一个X,Y平面的网格.她将N

bzoj 1914: [Usaco2010 OPen]Triangle Counting 数三角形

USACO划水中... 题目中要求经过原点的三角形数目,但这种三角形没什么明显的特点并不好求,所以可以求不经过原点的三角形数量. 对于一个非法三角形,它离原点最近的那条边连接的两个点所连的两条边一定在这个点与原点连线的一侧. 为了不重的计数,只用极角序最小的点算. 实现的时候可以把原数组复制一遍再用一个指针. #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #