PTA-C-4-7 统计某类完全平方数 (20分)

4-7 统计某类完全平方数   (20分)

本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。

函数接口定义:

int IsTheNumber ( const int N );

其中N是用户传入的参数。如果N满足条件,则该函数必须返回1,否则返回0。

裁判测试程序样例:

#include <stdio.h>
#include <math.h>

int IsTheNumber ( const int N );

int main()
{
    int n1, n2, i, cnt;

    scanf("%d %d", &n1, &n2);
    cnt = 0;
    for ( i=n1; i<=n2; i++ ) {
        if ( IsTheNumber(i) )
            cnt++;
    }
    printf("cnt = %d\n", cnt);

    return 0;
}

/* 你的代码将被嵌在这里 */

输入样例:

105 500

输出样例:

cnt = 6	
int IsTheNumber ( const int N ){
	int n,m,temp;
	m=N;
	n = (int)sqrt(N);
	if(n*n==m){
		int num[10]= {0};<span style="white-space:pre">	</span>//这里应该定义num的长度为10,因为传入的整数的每位数可能是0~~9,而不是传入数的位数。 
		while(m>0){<span style="white-space:pre">	</span>//遍历N的每一位上的数字,在相应的数组中自加 如果有一个数组元素等于2 说明至少有2个位上的数相同
			temp = m%10;
			for(int i=0 ;i<=9;i++){
				if(temp==i){
					num[i]++;
					if(num[i]==2){
						return 1;
					}
				}

			}
			m/=10;
		}
		return 0;
	}
	return 0;
}

时间: 2024-10-20 15:44:34

PTA-C-4-7 统计某类完全平方数 (20分)的相关文章

pta 6-7 统计某类完全平方数 (20分)

6-7 统计某类完全平方数 (20分) 本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144.676等. 函数接口定义: int IsTheNumber ( const int N ); 其中N是用户传入的参数.如果N满足条件,则该函数必须返回1,否则返回0. 裁判测试程序样例: #include <stdio.h> #include <math.h> int IsTheNumber ( const int N ); int main

PTA-C-4-7 统计某类完全平方数

4-7 统计某类完全平方数   (20分) 本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144.676等. 函数接口定义: int IsTheNumber ( const int N ); 其中N是用户传入的参数.如果N满足条件,则该函数必须返回1,否则返回0. 裁判测试程序样例: #include #include... http://bbs.chinaacc.com/forum-2-3/topic-5829463.htmlhttp://bbs

1038 统计同成绩学生 (20 分)

题目:1038 统计同成绩学生 (20 分) 本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第 1 行给出不超过 1 的正整数 N,即学生总人数.随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔.最后一行给出要查询的分数个数 K(不超过 N 的正整数),随后是 K 个分数,中间以空格分隔. 输出格式: 在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格. 输入样例: 10 60 75 90 55 75 99 82

PTA基础编程题目集6-7 统计某类完全平方数 (函数题)

本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144.676等. 函数接口定义: int IsTheNumber ( const int N ); 其中N是用户传入的参数.如果N满足条件,则该函数必须返回1,否则返回0. 裁判测试程序样例: #include <stdio.h> #include <math.h> int IsTheNumber ( const int N ); int main() { int n1, n2, i,

4-7 统计某类完全平方数

本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144.676等. 函数接口定义: int IsTheNumber ( const int N ); 其中N是用户传入的参数.如果N满足条件,则该函数必须返回1,否则返回0. 裁判测试程序样例: #include <stdio.h> #include <math.h> int IsTheNumber ( const int N ); int main() { int n1, n2, i,

B1038 统计同成绩学生 (20 分)

#include<iostream> #include<cstring> using namespace std; const int maxn = 10010; int scores[100] = {0}; int main(){ int N,K; cin >> N; for(int i = 0; i < N; i++){ int score; scanf("%d", &score); if(score >= 0 &&a

PTA乙级 (1049 数列的片段和 (20分))

1049 数列的片段和 (20分) https://pintia.cn/problem-sets/994805260223102976/problems/994805275792359424 第一次提交: 代码: #include <cstdio> #include <iostream> #include <cstring> #include <string> #include <cmath> #include <algorithm>

1038 统计同成绩学生 (20分)

#include <iostream> using namespace std; int main() { int n,k,g; int grade[101]={0}; cin>>n; int *k_grade=new int[100005];//稍微大一点 for(int i=0;i<n;i++) { cin>>g; grade[g]++; } cin>>k; for(int i=0;i<k;i++) { cin>>k_grade[

PTA 10-排序4 统计工龄 (20分)

题目地址 https://pta.patest.cn/pta/test/15/exam/4/question/721 5-13 统计工龄   (20分) 给定公司NN名员工的工龄,要求按工龄增序输出每个工龄段有多少员工. 输入格式: 输入首先给出正整数NN(\le 10^5≤10?5??),即员工总人数:随后给出NN个整数,即每个员工的工龄,范围在[0, 50]. 输出格式: 按工龄的递增顺序输出每个工龄的员工个数,格式为:"工龄:人数".每项占一行.如果人数为0则不输出该项. 输入样