Ural_1090. In the Army Now (数状数组)
2011-12-01 15:21
316 查看
/*开始没看懂题意。悲剧了一晚上。。。题意是N个人编号,1号最高,N号最矮,从后 往前跳。我看成1号最矮,N号最高了。其实可以把输入的数转化一下,让1号最矮,N号最 高,这样就好处理了。*/ //My Code: #include <iostream> #include <cstdio> #include <cstring> using namespace std; const int N = 10007; int c , n; int lowbit(int i) { return i&(-i); } void add(int i, int val) { while(i <= n) { c[i] += val; i += lowbit(i); } } int sum(int i) { int s = 0; while(i > 0) { s += c[i]; i -= lowbit(i); } return s; } int main() { //freopen("data.in", "r", stdin); int k, s, max, i, j, x, max_f; while(~scanf("%d%d", &n, &k)) { max = 0; max_f = 1; for(i = 0; i < k; i++) { memset(c, 0, sizeof(c)); for(s = 0, j = 0; j < n; j++) { scanf("%d", &x); x = n - x + 1; add(x, 1); s += sum(x-1); } if(s > max) {max = s; max_f = i+1;} } cout << max_f << endl; } return 0; }
相关文章推荐
- Ural_1028. Stars(数状数组)
- 1090. In the Army Now (Ural 1090 归并排序||树状数组)
- 数状数组
- URAL 1297 Palindrome【后缀数组】求最长回文子串
- URAL - 1989 Subpalindromes hash & 树状数组 | 线段树
- ural1297 Palindrome【后缀数组】
- Ural 1706. Cipher Message 2 后缀数组
- ural 1028【树状数组】
- URAL 1521 War Games 2 树状数组解决约瑟夫环,输出离队顺序
- HDOJ 题目1394 Minimum Inversion Number(数状数组求逆序对)
- URAL 1297. Palindrome(后缀数组 求最长回文子串)
- Minimum Inversion Number 数状数组
- BZOJ 1227: [SDOI2009]虔诚的墓主人 数状数组
- MooFest(数状数组)
- ural1028 Stars (树状数组)
- Ural 1028 Stars(树状数组)
- HDU 1394 Minimum Inversion Number (归并排序 | 线段树 | 数状数组)
- [莫比乌斯反演+数状数组] BZOJ3529: [Sdoi2014]数表
- HDU 2227 Find the nondecreasing subsequences (数状数组)
- Ural1090 (树状数组求逆序数)