25 条题解
-
19
这题用暴力枚举就行,n<=100,所以不用考虑超时。
#include <iostream> using namespace std; int n,a[105]; int main() { cin >> n; for (int i=1;i<=n;i++) { cin >> a[i]; } for (int i=1;i<=n;i++) { int num=0; for (int j=1;j<i;j++) { if(a[j]<a[i]) { num++; } } cout << num << " "; } return 0; }
-
6
P1019 小鱼比可爱
题目描述
人比人,气死人;鱼比鱼,难死鱼。小鱼最近参加了一个“比可爱”比赛,比的是每只鱼的可爱程度。参赛的鱼被从左到右排成一排,头都朝向左边,然后每只鱼会得到一个整数数值,表示这只鱼的可爱程度,很显然整数越大,表示这只鱼越可爱,而且任意两只鱼的可爱程度可能一样。由于所有的鱼头都朝向左边,所以每只鱼只能看见在它左边的鱼的可爱程度,它们心里都在计算,在自己的眼力范围内有多少只鱼不如自己可爱呢。请你帮这些可爱但是鱼脑不够用的小鱼们计算一下。
(提炼一下:左边比a[i]小的数有几个)
思路
循环枚举第i个数,内循环计数有几个数比a[i]小并输出。
用到循环枚举
if(a[i] > a[j]) { sum++; }
(如果a[i] > 前面的a[j],sum++)
参考代码:
#include <iostream> using namespace std; int a[100],sum; int main() { int n; cin >> n; for(int i = 1;i <= n;i++) { cin >> a[i]; } for(int i = 1;i <= n;i++) { sum = 0; for(int j = 1;j < i;j++) { if(a[i] > a[j]) { sum++; } } cout << sum << " "; } }
hetao3097453
2023年4月15日
-
3
#include<bits/stdc++.h> using namespace std; int main(){ int x; cin>>x; int a[105]; //完成"可爱数"值的输入 for(int i=0;i<x;i++) cin>>a[i]; for(int i=0;i<x;i++){ //外循环控制鱼的条数 //内层循环中就要比较鱼的可爱程度,还要计数 int ans=0;//比当前鱼可爱值低的鱼的数量的计数 for(int j=0;j<i;j++){ if(a[j]<a[i]) ans++; } cout<<ans<<" "; } return 0; }
-
2
P1019 小鱼比可爱
题目描述
人比人,气死人;鱼比鱼,难死鱼。小鱼最近参加了一个“比可爱”比赛,比的是每只鱼的可爱程度。参赛的鱼被从左到右排成一排,头都朝向左边,然后每只鱼会得到一个整数数值,表示这只鱼的可爱程度,很显然整数越大,表示这只鱼越可爱,而且任意两只鱼的可爱程度可能一样。由于所有的鱼头都朝向左边,所以每只鱼只能看见在它左边的鱼的可爱程度,它们心里都在计算,在自己的眼力范围内有多少只鱼不如自己可爱呢。请你帮这些可爱但是鱼脑不够用的小鱼们计算一下。
(提炼一下:左边比a[i]小的数有几个)
思路
循环枚举第i个数,内循环计数有几个数比a[i]小并输出。
用到循环枚举
if(a[i] > a[j]) { sum++; }
(如果a[i] > 前面的a[j],sum++)
参考代码:
#include <iostream> using namespace std; int a[100],sum; int main() { int n; cin >> n; for(int i = 1;i <= n;i++) { cin >> a[i]; } for(int i = 1;i <= n;i++) { sum = 0; for(int j = 1;j < i;j++) { if(a[i] > a[j]) { sum++; } } cout << sum << " "; } }
hetao5487227
2023年10月22日
-
1
这道题一个个比对的算法有点像前缀和,但是不能用前缀和,因为它们在比对时的比较量不同,所以可以用暴力枚举来暴力出结果(反正n<=100):
#include <iostream> #include <algorithm> #include <cmath> using namespace std; int n,a[101],b; int main() { cin>>n; for (int i=1;i<=n;i++) { b=0; cin>>a[i]; for (int j=1;j<=i;j++) if (a[j]<a[i]) b++; cout<<b<<" "; } return 0; }
-
1
` 没啥好说的,暴力枚举直接上
#include <bits/stdc++.h> using namespace std; int cnt, n, a[105]; int main() { cin >> n; for (int i = 0; i < n; i++) cin >> a[i]; for (int i = 0; i < n; i++) { cnt = 0; for (int j = i; j >= 0; j--) if (a[j] < a[i]) cnt++; cout << cnt << ' '; } return 0; } ``` ```
-
0
这题非常的简单哈,我的代码其实是:space XD等写法的一个缩减。 这个题主要用的是暴力枚举,(for循环)。 上代码
#include <bits/stdc++.h> using namespace std; int main() { int n,a[10000005],sum;//没有初始化,直接在这里写了。 cin>>n; for(int i=1;i<=n;i++) { sum=0; cin>>a[i];//因为只用这个数字左边的数据,所以两个循环可以融为一体。 for(int j=1;j<=i;j++) { if(a[j]<a[i]) { sum++; } } cout<<sum<<" "; } }
//制作不易,点个赞再走吧。
😄 🎉️
-
0
#include <iostream> using namespace std; int a[100],sum; int main() { int n; cin >> n; for(int i = 1;i <= n;i++) { cin >> a[i]; } for(int i = 1;i <= n;i++) { sum = 0; for(int j = 1;j < i;j++) { if(a[i] > a[j]) { sum++; } } cout << sum << " "; } }
信息
- ID
- 11
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 2
- 标签
- 递交数
- 1850
- 已通过
- 1158
- 上传者