yangxixi 发表于 2014-6-23 15:01:41

请问一下C++的有关问题

C++版本的是这个:
#include <iostream>#include<set>#include<algorithm>using namespace std;int main(){set<long long>s;int a[200005];long k;int n,sum=0;cin>>n>>k;s.clear();for(int i=0;i<n;i++){      cin>>a[i];}sort(a,a+n);for(int m=0;m<n;m++){      if(s.count(a[m])==0)      {       sum++;       s.insert(a[m]*k);      }}cout<<sum;return 0;}C语言版本是这个:#include<stdio.h>#include<iostream>#include<algorithm>#include<set>using namespace std;#define MAXX 200005long long a;int main(){    int n,k;    while(~scanf("%d%d",&n,&k))    {      set<long long>s;      s.clear();      for(int i=0;i<n;i++)            scanf("%lld",&a);      sort(a,a+n);      int sum=0;      for(int i=0;i<n;i++)      {            if(s.count(a)==0)            {                sum++;                s.insert(a*k);            }      }      printf("%d\n",sum);    }    return 0;}这两个有什么区别啊?

仰望天上的光 发表于 2014-6-23 15:01:42

就是用printf替代cout,scanf替代cin
本质上都是C++ STL风格的程序,都不是C语言程序
页: [1]
查看完整版本: 请问一下C++的有关问题