Array
来源:互联网 发布:求数组最大最小值 编辑:程序博客网 时间:2024/05/19 16:50
Array
1s; 256M
1.1 题目描述
Alice 有一个数列ai。
但是她不喜欢这个数列,于是她决定随机交换其中两个数。
Alice 想知道,交换后的数列与原数列相同的数有多少个。请求出所有可能的
值。
1.2 输入格式
第一行一个正整数n,表示Alice 的数列的长度。
第二行n 个正整数,第i 个数表示ai,即交换前的数列的第i 项。
1.3 输出格式
一行若干个严格递增的正整数,用空格隔开,表示交换后的数列与原数列相
同的数的个数。
1.4 样例输入
32
3 3
1.5 样例输出
1 3
1.6 样例解释
交换后可能的数列有2 3 3, 3 2 3, 3 3 2,个数分别是3, 1, 1。
1.7 数据范围
对于100% 的数据,1 n 100; 1 ai 1000。
做法:显而易见的模拟,其实对于大部分的数据,讨论是否是输出n和n-2就好了(能对?)。。
代码如下
var f:array[0..1001] of boolean; b,a:array[0..1000] of longint; n,i,j,k,t,sum:longint;begin assign(input,'array.in'); reset(input); assign(output,'array.out'); rewrite(output); readln(n); for i:=1 to n do read(a[i]); for i:=1 to n-1 do for j:=i+1 to n do begin b:=a; sum:=0; t:=b[i]; b[i]:=b[j]; b[j]:=t; for k:=1 to n do if a[k]=b[k] then inc(sum); f[sum]:=true; end; for i:=0 to n do if f[i] then write(i,' '); close(input); close(output);end.
阅读全文
0 0
- array
- Array#-
- Array#[]
- Array#<<
- Array
- array
- Array
- array
- Array
- array
- array
- array
- array()
- Array
- Array
- Array
- Array
- Array()
- Array
- thinkphp博客搭建(二)
- Unity3D游戏美术全攻略:从入门到精通
- FZU 2150 Fire Game(双向BFS)
- Biotech
- Array
- RIP路由信息协议
- Unity游戏动画 从入门到住院:动画状态机
- Kickstart无人值守批量安装系统
- 商业计划书的“三·七”原则
- PCB设计经验之一
- webSevice基础学习
- Biotech
- android命令行生成签名文件