PAT basic 1087
Posted yxp400
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT basic 1087相关的知识,希望对你有一定的参考价值。
1087 有多少不同的值 (20 分)
当自然数 n 依次取 1、2、3、……、N 时,算式 ?n/2?+?n/3?+?n/5? 有多少个不同的值?(注:?x? 为取整函数,表示不超过 x 的最大自然数,即 x 的整数部分。)
输入格式:
输入给出一个正整数 N(2≤N≤10?4??)。
输出格式:
在一行中输出题面中算式取到的不同值的个数。
输入样例:
2017
输出样例:
1480
这道题熟练使用STL,很容易做出来。
1 #include<iostream> 2 #include<set> 3 4 using namespace std; 5 6 int main(){ 7 set<int> a; 8 int n,x; 9 scanf("%d",&n); 10 for( int i = 1; i <= n; i++){ 11 x = (i/2) + (i/3) + (i/5); 12 a.insert(x); 13 } 14 cout<<a.size(); 15 }
以上是关于PAT basic 1087的主要内容,如果未能解决你的问题,请参考以下文章
PAT1087. All Roads Lead to Rome
1087. All Roads Lead to Rome (30)最短路——PAT (Advanced Level) Practise