题目大意:
http://codevs.cn/problem/1059/
#include <iostream> #include <cstdio> #include <algorithm> using namespace std; int a[1050] = {0}; int b[1050] = {0}; int main() { int n; int count = 0; int res[1050] = {0}; scanf("%d" , &n); for(int i = 0; i < n; i++) scanf("%d" , &a[i]); for(int i = 0; i < n; i++) scanf("%d",&b[i]); int total = 0; int flag = 0; for(int j = 0; j < n; j++) { int tmpn = n; int tmpj = j; while(tmpn-- != 0) { total += a[tmpj]; if(total - b[tmpj] >= 0) { flag++; total -= b[tmpj]; } else break; if(tmpj == n-1) tmpj = 0; else tmpj++; } if(flag == n) res[count++] = j+1; total = 0; flag = 0; } if(count == 0) cout << "No Result!" << endl; else { sort(res,res+count); for(int i = 0; i < count; i++) { cout << res[i] << " "; } } return 0; }