Codeforces Round #582 (Div. 3)
Codeforces Round #582 (Div. 3)
A:http://codeforces.com/contest/1213/problem/A
与奇偶性有关,直接判断奇数和偶数的个数谁少 那么就是最少需要的硬币数目
#include <bits/stdc++.h> const int N=1e5+5; using namespace std; int n,m,k; int a[N]; int main(){ cin>>n; int ans1=0,ans2=0; for(int i=1;i<=n;i++) scanf("%d",a+i); for(int i=1;i<=n;i++) ans1+=a[i]%2,ans2+=(a[i]+1)%2; printf("%d\n",min(ans1,ans2)); return 0; }
B:http://codeforces.com/contest/1213/problem/B
B题当初看了很久才明白就是如果后面有售价比当前还低,那么就是价格不好的一天。
其实只是需要后面有其中一天比当前的售价低满足就好,然后模拟。(从最后一天开始)
#include <iostream> using namespace std; const int N = 1e5+10; int a[N]; int main() { int k; cin>>k; while(k--) { int n; cin>>n; for(int i = 0;i < n;i++) scanf("%d",&a[i]); int mind = a[n-1]; int res = 0; for(int i = 0;i < n;i++) { if(a[i] > mind) res++; else mind = min(mind,a[i]); } cout<<res<<endl; } return 0; }
C:http://codeforces.com/contest/1213/problem/C
当时太菜了,有人提醒我循环节了,可是不懂循环节这就很难搞了