500 :
问题描述:计数问题,满足下列条件的六面体骰子的数目。。
1:数字范围在[1,N]之间且两两不相同。
2:对面数字和相等且 >= k。
3:经过旋转相同的筛子被看作是等价的。
…
算法分析: 枚举,只要认识到(哪尼),” 任何3对数,只会产生两组本质不同的解 ” 就可以了。
(room 里有人用DP?.. 是怎么DP的呢?)
1000 :
问题描述:给定一个长度为 N 的数轴,输入 M 个三元组 (l, r, d) ,破坏所有 [l, r] 中,被 d 整除的位置?问一共被破坏了多少个位置。
算法分析:介于 M 值较小,可以用容斥原理做。(线段树可以马?)
#include 
using namespace std;
int Cn3(int n){
	if (n < 3) return 0;
	return n * (n-1) * (n-2) / 6;
}
class FoxMakingDiceEasy{
public:
		int theCount(int n, int k){			
			int res = 0, MAX = n * 2 - 5;
			// i: 为了计算,枚举正反两面的数字和 - 1 的值。                      
			for (int i=k-1;i
#include 
#include 
using namespace std ;
class BottlesOnShelf
{
	public :
		long long  gcd( long long a , long long b ) { if ( b == 0 ) return a ; return gcd(b , a%b) ; }
		long long  lcm( long long a , long long b ) { long long c = gcd(a , b) ; return a * b / c ; }
		
		int getNumBroken(int N, vector  L, vector  R, vector  D)
		{
			int M = L.size() , p , ll , rr , ans ;
			long long w , c ;
			ans = 0 ;
			for ( int i = 1 ; i < (1 << M) ; i ++ )
			{
				p = 0 ;
				for ( int j = 0 ; j < M ; j ++ ) if ( ( i >> j ) & 1 ) p ++ ;
				
				ll = 1 ; rr = N ; w = -1 ;
				for ( int j = 0 ; j < M ; j ++ ) if ( ( i >> j ) & 1 )
				{
					if ( L[j] > ll ) ll = L[j] ;
					if ( R[j] < rr ) rr = R[j] ;
					if ( w == -1 ) w = D[j] ; else w = lcm(w , (long long)D[j]) ;
				}
				
				c = (long long)(rr / w) - (long long)((ll-1) / w) ;
				if ( p % 2 == 1 ) ans += c ; else ans -= c ;
			}
			return ans ;
		}
} ;
     
                                                												
											  



 Alca
 Alca Amber
 Amber Belleve Invis
 Belleve Invis Chensiting123
 Chensiting123 Edward_mj
 Edward_mj Fotile96
 Fotile96 Hlworld
 Hlworld Kuangbin
 Kuangbin Liyaos
 Liyaos Lwins
 Lwins LYPenny
 LYPenny Mato 完整版
 Mato 完整版 Mikeni2006
 Mikeni2006 Mzry
 Mzry Nagatsuki
 Nagatsuki Neko13
 Neko13 Oneplus
 Oneplus Rukata
 Rukata Seter
 Seter Sevenkplus
 Sevenkplus Sevenzero
 Sevenzero Shirleycrow
 Shirleycrow Vfleaking
 Vfleaking wangzhpp
 wangzhpp Watashi
 Watashi WJMZBMR
 WJMZBMR Wywcgs
 Wywcgs XadillaX
 XadillaX Yangzhe
 Yangzhe 三途川玉子
 三途川玉子 About.me
 About.me Vijos
 Vijos
