CCF 201409-1 相邻数对
2019-03-24 09:18
190 查看
试题编号: 201409-1
试题名称: 相邻数对
时间限制: 1.0s 内存限制: 256.0MB
问题描述:
给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1。
输入格式
输入的第一行包含一个整数n,表示给定整数的个数。第二行包含所给定的n个整数。
输出格式
输出一个整数,表示值正好相差1的数对的个数。
样例输入
6
10 2 6 3 7 8
样例输出
3
样例说明
值正好相差1的数对包括(2, 3), (6, 7), (7, 8)。
评测用例规模与约定 1<=n<=1000,给定的整数为不超过10000的非负整数。
Code1:
#include <iostream> #include <cmath> using namespace std; const int N=1000; int m ; int main() { int n,v,count=0; cin>>n; for(int i=0; i<n; i++) { cin>>v; m[i]=v; } for(int i=0; i<n; i++) { for(int j=i+1; j<n; j++) { if(abs(m[i]-m[j])==1) { count++; } } } cout<<count<<endl; return 0; }
Code2:
#include <iostream> #include <cstring> using namespace std; const int N=10000; bool flag[N+2]; int main() { int n,v,sum=0; memset(flag,false,sizeof(flag));//将数组flag全设为false cin>>n; for(int i=1; i<=n; i++) { cin>>v; flag[v]=true; if(flag[v-1]) { sum++; } if(flag[v+1]) { sum++; } } cout<<sum<<endl; return 0; }
Code3
#include <iostream> using namespace std; int main() { int n; while(cin>>n) { int buf[1001]; for(int i=0; i<n; i++) { cin>>buf[i]; } int sum=0; for(int i=0; i<n; i++) for(int j=i+1; j<n; j++) if(buf[i]-buf[j]==1 || buf[j]-buf[i]==1) sum++; cout<<sum<<endl; } return 0; }
你还想看**CCF刷题目录**
相关文章推荐
- CCF 201409-1 相邻数对
- CCF-201409-1-相邻数对
- CCF 201409-1 相邻数对
- CCF 201409-1 相邻数对
- CCF CSP 编程题目和解答-----试题名称:相邻数对-------201409-1
- CCF-相邻数对-201409-1
- ccf-201409-1 相邻数对
- CCF 201409-1 相邻数对
- 201409-1 相邻数对 ccf
- CCF系列之相邻数对(201409-1)
- CCF——相邻数对201409-1
- CCF CSP 201409-1 相邻数对
- python ccf题解 201409-1 相邻数对
- CCF 相邻数对 C语言 201409-1
- 【ccf-201409-1】 相邻数对
- CCF Python题解(100分)201409-1 相邻数对
- CCF 201409-1 相邻数对 题解
- CCFCSP 201409-1相邻数对
- CCF CSP 201409-1 相邻数对
- CCF 201409-1 相邻数对 (水题)