A special site for solving fun programming problems and challenges, interested in computer science, programming, basics, data structure and algorithms

 

.com/img/a/

CodeChef recently revamped its practice page to make it easier for users to identify the next problems they should solve by introducing some new features:

  • Recent Contest Problems - contains only problems from the last 2 contests
  • Separate Un-Attempted, Attempted, and All tabs
  • Problem Difficulty Rating - the Recommended dropdown menu has various difficulty ranges so that you can attempt the problems most suited to your experience
  • Popular Topics and Tags

Like most users, Chef didn’t know that he could add problems to a personal to-do list by clicking on the magic '+' symbol on the top-right of each problem page. But once he found out about it, he went crazy and added loads of problems to his to-do list without looking at their difficulty rating.

Chef is a beginner and should ideally try and solve only problems with difficulty rating strictly less than 1000. Given a list of difficulty ratings for problems in the Chef’s to-do list, please help him identify how many of those problems Chef should remove from his to-do list, so that he is only left with problems of difficulty rating less than 1000.

Input Format

  • The first line of input will contain a single integer T, the number of test cases. Then the testcases follow.
  • Each testcase consists of 2 lines of input.
  • The first line of input of each test case contains a single integer, N, which is the total number of problems that the Chef has added to his to-do list.
  • The second line of input of each test case contains N space-separated integers D1,D2,,DN, which are the difficulty ratings for each problem in the to-do list.

Output Format

For each test case, output in a single line the number of problems that Chef will have to remove so that all remaining problems have a difficulty rating strictly less than 1000.

Constraints

  • 1T1000
  • 1N1000
  • 1Di5000

Subtasks

  • Subtask 1 (100 points):
    • Original constraints

Sample Input 1 

5
3
800 1200 900
4
999 1000 1001 1002
5
1 2 2 2 5000
5
1000 1000 1000 1000 1000
3
900 700 800

Sample Output 1 

1
3
1
5
0

Explanation

Test case 1: Among the three difficulty ratings, Chef only needs to remove the problem with difficulty rating 1200, since it is 1000. So, the answer is 1.

Test case 2: Among the four difficulty ratings, Chef needs to remove the problems with difficulty ratings of 10001001, and 1002, since they are 1000. So, the answer is 3.

Test case 3: Among the five difficulty ratings, Chef needs to remove the problem with a difficulty rating of 5000, since it is 1000. So, the answer is 1.

Test case 4: Chef needs to remove all the five problems, since they are all rated 1000. So, the answer is 5.

Test case 5: Chef does not need to remove any problem, since they are all rated <1000. So, the answer is 0.

solution in cpp

  1. #include<iostream>
  2. #define ll long long
  3. #include<vector>
  4. #include<stack>
  5. #include<string>
  6. #include<algorithm>
  7. using namespace std;

  8. void solve()
  9. {
  10. ll n;
  11. cin >> n;
  12. vector<ll> v(n);
  13. for (ll i = 0; i < n; i++)
  14. {
  15. cin >> v[i];
  16. }
  17. ll count = 0;
  18. for (ll i = 0; i < n; i++)
  19. {
  20. if (v[i] >= 1000)
  21. count++;
  22. }
  23. cout << count << "\n";
  24. }

  25. int main()
  26. {
  27. int t;
  28. cin >> t;
  29. while (t--)
  30. {
  31. solve();
  32. }
  33. return 0;
  34. }

No comments:

Post a Comment