Vị trí số dương c++ Nhập vào một dãy N số nguyên A1,A2,...,AN (N≤10000,|Ai|≤109). Hãy in ra màn hình chỉ số phần tử dương đầu tiên và cuối cùng. Dữ liệu vào: Dòng đầu tiên chứa số N Dòng thứ 2 chứa N số nguyên A1,A2,...,AN. Kết quả: In ra chỉ số phần tử dương đầu tiên và cuối cùng, nếu ko có phần tử dương nào thì in ra 2 số −1 −1 Sample Input 7 7 -6 -4 19 -22 51 -82 Sample Output 1 6

2 câu trả lời

#include<bits/stdc++.h>
using namespace std;
int main()
{
 int n,z=-1,f=-1;
 cin>>n;
 int a[n];
 
 for (int i=0;i<n;i++)
 {
  cin>>a[i];
  if (a[i]>0)
  {
   if (z==-1)
   z=i+1;
   f=i+1;
  }
 }
 
 cout<<z<<" "<<f;
}

#include <iostream>
#include <vector>
using namespace std;

int main() {
 int n,x;
 cin >> n;
 vector<int> a;
 for (int i = 1;i <= n;i++) {
  cin >> x;
  if (x > 0) {
   a.push_back(i);
  }
 }
 if (a.size() == 0) {
  cout << "-1 -1";
 } else {
  cout << a[0] << ' ' << a.back();
 }
}

Câu hỏi trong lớp Xem thêm