34 条题解
-
117
这一题先定义变量 b 和 c 来分别存储 最大值 和 最小值 的索引,然后一次输入求出 最大值 and 最小值 ,最后输出 b 和 c 即可(注意空格,c++注重格式!)
#include <bits/stdc++.h> using namespace std; int main() { int n, x, b = 0, c = 0, max = 0, min = 99999999; cin >> n; for (int i=1;i<=n;i++) { cin >> x; if (x > max) { max = x; b = i; } if (x < min) { min = x; c = i; } } cout << b << " " << c; return 0; }
大佬们,喜欢的点个赞吧~ 不喜欢的点个踩吧
-
18
基础版
#include <iostream> using namespace std; int main() { int a[1000], n, i, max = 0, min = 0; cin >> n; for (i = 0; i < n; i++) { cin >> a[i]; if (a[i] > a[max]) { max = i; } if (a[i] < a[min]) { min = i; } } cout << max + 1 << " " << min + 1; return 0; }
加强版
#include <bits/stdc++.h> using namespace std; int main() { int n; cin >> n; int a[n]; for (int i = 0; i < n; i++) { cin >> a[i]; } int max = a[0], x = 0; int min = a[0], y = 0; for (int i = 0; i < n;i++) { if (a[i] >= max) { max = a[i]; x = i; } else if (a[i] <= min) { min = a[i]; y = i; } } cout << x + 1 << " " << y + 1; return 0; }
-
10
还是一道比较倾向数学的编程题
就是数学题比较简单啦,看题解吧👀️#include<iostream> using namespace std; int main() { int n , a[100] , max = 0,min = 0; //定义四个变量,分别储存人数,学号,最大学号索引,最小学号索引(初始索引是0,则是对应第一个人的学号 cin >> n; for (int i = 0;i < n; i++) { cin >> a[i]; if (a[i] > a[max])//比较大小 { max = i;//max是较大数的索引 } if (a[i] < a[min]) { min = i;//min是较小数的索引 } } cout << max + 1 << " " << min + 1;//最后输出的编号是索引+1 return 0; }
算是比较简单了吧 大佬点个赞再走吧👀️
-
8
新手题解👀️ 注意这种写法输出的时候写两个for循环,,写在一起可能会先输出最小学号后输出最大学号(亲测
#include <iostream> using namespace std; int main() { int n, a[100], amin = 1000000, amax = 0; cin >> n; for (int i = 0; i < n; i++) { cin >> a[i]; } for (int i = 0; i < n; i++) { if (a[i] > amax) { amax = a[i]; } if (a[i] < amin) { amin = a[i]; } } for (int i = 0; i < n; i++) { if (a[i] == amax) { cout << i + 1 << " "; } } for (int i = 0; i < n; i++) { if (a[i] == amin) { cout << i + 1 << " "; } } return 0; }
-
6
#include <bits/stdc++.h> using namespace std; int main() { int n; cin >> n; int a[n]; for (int i = 0; i < n; i++) { cin >> a[i]; } int max = a[0], x = 0; int min = a[0], y = 0; for (int i = 0; i < n;i++) { if (a[i] >= max) { max = a[i]; x = i; } else if (a[i] <= min) { min = a[i]; y = i; } } cout << x + 1 << " " << y + 1; return 0; }
-
6
题解来喽!!! 首先,我们先要判断最大学号,用maxn来记录最大数,用x来记录位置。然后在判断最小学号,用minn来记录最小数,y来记录位置。最后输出x和y即可。
#include<bits/stdc++.h> using namespace std; int main() { int n,a[101],maxn=-1,minn=101,x=0,y=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i]; } for(int i=1;i<=n;i++) { if(a[i]>maxn) { maxn=a[i]; x=i; } }//求最大学号的位置 for(int i=1;i<=n;i++) { if(a[i]<minn) { minn=a[i]; y=i; } }//求最小学号的位置 cout<<x<<" "<<y; return 0; }
-
4
#include <bits/stdc++.h> using namespace std; int main() { int n; cin >> n; int a[n]; for (int i = 0; i < n; i++) { cin >> a[i]; } int max = a[0], x = 0; int min = a[0], y = 0; for (int i = 0; i < n;i++) { if (a[i] >= max) { max = a[i]; x = i; } else if (a[i] <= min) { min = a[i]; y = i; } } cout << x + 1 << " " << y + 1; return 0; }
-
2
很简单~~~找到最值之后再使用for循环遍历数组找到其位置,并把其下标+1输出即可!!(very easy)
#include <iostream> using namespace std; int main() { int a,max1,min1; cin>>a; int b[a]; for (int i=0;i<a;i++) { cin>>b[i]; } max1=b[0]; min1=b[0]; for (int i=0;i<a;i++) { if (b[i]>max1) { max1=b[i]; } if (b[i]<min1) { min1=b[i]; } } for (int i=0;i<a;i++) { if (b[i]==max1) { cout<<i+1<<" "; } } for (int i=0;i<a;i++) { if (b[i]==min1) { cout<<i+1; } } return 0; }
-
2
#include <bits/stdc++.h> using namespace std; int main() { int n, a[100], ma = 0, mi = 100000, mah, mih; cin >> n; for (int i = 0; i < n; i++) { cin >> a[i]; if (a[i] > ma) { ma = a[i]; } if (a[i] < mi) { mi = a[i]; } } for (int i = 0; i < n; i++) { if (a[i] == ma) { mah = i + 1; } if (a[i] == mi) { mih = i + 1; } } cout << mah << " " << mih; return 0; }
-
2
so easy有点难度的其实#include<bits/stdc++.h> using namespace std; void a(int n){ int _max=0,_min=0,x=0,a,b; cin>>x; _max=x; a=1; _min=x; b=1; for (int i=2;i<=n;i++){ cin>>x; if (x>_max){ _max=x; a=i; } if (x<_min){ _min=x; b=i; } } cout<<a<<" "<<b; } int main(){ int n;cin>>n;a(n); }
这道题要定义好变量,可以用max做最大值,a做索引,—min做最小值,b做索引。 做法不一,你可以发挥自己的力量,改编一下,也许。。。更好?min的定义值不止一个可能! 关注我--主函数第一人
-
2
#include <bits/stdc++.h> using namespace std; int n,a[101],maxx=-1,minn=999999,pos1,pos2; int main() { cin>>n; for (int i=1;i<=n;i++) { cin>>a[i]; } for (int i=1;i<=n;i++) { if (a[i]>maxx) { maxx=a[i];//更新最大值 pos1=i;//更新最大值位置 } if (a[i]<minn) { minn=a[i];//更新最小值 pos=i;//更新最小值位置 } } cout<<pos1<<" "<<pos2; return 0; }
-
1
!!!养成好习惯,先点赞在看!!! 本题很简单,学好如何求最大数和最小数就可以回答。废话不多说,直接上代码!
#include <bits/stdc++.h> using namespace std; int main() { int n,a[100],minn=101,maxn=0,p1,p2; cin >> n; for (int i=0;i<n;i++)//遍历数组 { cin >> a[i];//输入元素 if (a[i] > maxn)//找maxn { maxn = a[i]; p1=i+1;//记住位置 } if (a[i] < minn)//找minn { minn = a[i]; p2=i+1;//一样,记住位置 } } cout << p1 << " " << p2;//输出位置 return 0; }
编码不易,点个赞吧,谢谢!
-
1
~多此一举算法~
#include <bits/stdc++.h> using namespace std; struct a { short pos; int value; }; int main() { int n, temp; a max, min; max.pos, min.pos = 0; max.value = -1000000000; min.value = 1000000000; scanf("%i", &n); for (short i = 1; i <= n; i++) { scanf("%i", &temp); if(temp > max.value) { max.value = temp; max.pos = i; } if(temp < min.value) { min.value = temp; min.pos = i; } } printf("%i %i", max.pos, min.pos); return 0; }
-
1
本蒟蒻的第114514篇题解
真是一道非常困(简)难(单)的难度5的题啊!
题目传送门:P425 【入门】找同学的位置 先理一下思路,这道题就是定义一个数组,数组的大小先输入进去,然后找到最大值和最小值,确定他们的位置,然后输出就行了
AC代码如下(附注释):
#include <bits/stdc++.h>//定义万能头文件 using namespace std;//创建命名空间 int main ()//我不信你不写 { int a, b[105], maxn = -114514, minn = 114514, c, d;//定义人数变量a、储存学号的数组b、存放最大值的变量maxn和存放最小值的变量minn,值可以改变。然后再定义存放位置的变量c和d cin >> a;//输入a for (int i = 1; i <= a; i++)//循环输入数组 { cin >> b[i];//输入 if (b[i] > maxn)//判断如果这个数比最大值大 { maxn = b[i];//那么这个编号就是最大的了。 c = i;//找到它的位置,用c标记 } if (b[i] < minn)//如果这个数比最小值小 { minn = b[i];//那么这个编号就是最小的 d = i;//用d标记位置 } } cout << c << " " << d;//输出,记住中间有一个空格 return 0;//保持return 0的好习惯 }
完结撒花!!!🎉️ 🎉️ 🎉️ 真不戳!!!
信息
- ID
- 425
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 5
- 标签
- 递交数
- 6553
- 已通过
- 2478
- 上传者