题目描述
Problem B: Saskatchewan
The province of Saskatchewan is surveyed in sections. A section is a square mile of land. Grid roads delimit sections; there is one north-south and one east-west road exactly every mile. (Complications arise because of the curvature of the earth but you can disregard these and assume that the province is a plane.) The provincial border is a polygon whose vertices correspond to the intersections of grid roads. However, the edges do not necessarily follow grid roads; some sections are cut by the border. Your job is to compute how many sections are completely within a province like Saskatchewan.
Standard input contains a series of no more than 100 coordinate pairs, one pair per line. These coordinates give the vertices of the perimeter of the province; the border is formed by connecting them in order. All coordinates are in the first quadrant; they range from 0 to 100,000.
Your output should be a single integer: the number of sections (i.e. unit squares with corners at integer coordinates) fully contained within the province.
输入
暂无
输出
暂无
样例输入
0 0
0 100000
99999 100000
100000 0
样例输出
9999900000
参考代码
#include <stdio.h>
#include <stdlib.h>
char in[5000];
int i,j,k,n,next,prev,jolly;
main()
{
while (1 == scanf("%d",&n))
{
jolly = 1;
for (i=1;i<n;i++) in[i] = 0;
scanf("%d",&prev);
for (i=1;i<n;i++)
{
scanf("%d",&next);
j = abs(next-prev);
if (j < 1 || j >= n || in[j]++) jolly = 0;
prev = next;
}
if (jolly) printf("Jollyn");else printf("Not jollyn");
}
}
解析
暂无