程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> Codeforce 424C Magic Formulas 找規律

Codeforce 424C Magic Formulas 找規律

編輯:C++入門知識

 

題意:求Q值

思路:找規律

顯然可以得到一個矩陣

把這個矩陣畫出來就能發現一個橫向的規律和一個主對角線方向的規律

 

#include
#include
#include
#include
#include
#include
using namespace std;
#define goal 1000000
#define ll int
#define N 1000005
ll n, s;
ll a[N];
ll du[N];
int main(){
	ll i, j, len;
	while(~scanf(%d,&n)){
		for(i=1;i<=n;i++)scanf(%d,&a[i]);
		du[0] = 0;
		for(i=1;i<=n;i++)du[i] = du[i-1]^i;
		ll ans = a[1];
		for(i=2;i<=n;i++)ans ^= a[i];
		for(i=1;i<=n;i++){
			ll siz = n/i;
			if(siz&1)ans ^= du[i-1];
			if(n%i)  ans ^= du[n%i];
			
		}
		printf(%d
,ans);
	}
	return 0;
}


 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved