• TopCoder SRM 581


    第一次做TC。。。

    只做上了2道题(是我太菜了吗?)

    还行ranting一下子就成1500+了。


    Div2 p1 BlackAndWhiteSolitaire

    int BlackAndWhiteSolitaire::minimumTurns(string cardFront) {
    	int i, n = cardFront.size(), ret = 0;
    	for (i = 0; i < n; ++i)
    		if (1 & i)
    			ret += cardFront[i] == 'W';
    		else
    			ret += cardFront[i] == 'B';
    	return min(ret, n - ret);
    }
    

     Div2 p2 SurveillanceSystem

    涉及到抽屉原理

    就是初始让所有方格都设为不可能被看到的。

    然后确定可能被看到的,和一定被看到的。(注意没有两个摄像头的覆盖是重叠的。)

    我写的比较挫,将就看吧。

    int f[55], ff[55], sum[55];
    string SurveillanceSystem::getContainerInfo(string containers, vector <int> reports, int L) {
    	int i, j, k, n, m, s, ss, mm;
    	n = containers.size();
    	m = reports.size();
    	memset(f, 0, sizeof f);
    	sort(reports.begin(), reports.end());
    	sum[mm = 0] = 1;
    	for (i = 1; i < m; ++i)
    		if (reports[i] == reports[mm])
    			++sum[mm];
    		else {
    			reports[++mm] = reports[i];
    			sum[mm] = 1;
    		}
    	++mm;
    	for (i = 0; i < mm; ++i) {
    		memset(ff, 0, sizeof ff);
    		ss = 0;
    		for (j = 0; j < n - L + 1; ++j) {
    			s = 0;
    			for (k = j; k < j + L; ++k)
    				if (containers[k] == 'X')
    					++s;
    			if (s != reports[i])
    				continue;
    			++ss;
    			for (k = j; k < j + L; ++k)
    				++ff[k];
    		}
    		if (ss == sum[i]) {
    			for (j = 0; j < n; ++j)
    				if (ff[j])
    					f[j] = 2;
    		} else {
    			for (j = 0; j < n; ++j)
    				if (ss - ff[j] + 1 <= sum[i])
    					f[j] = 2;
    				else
    					f[j] = max(f[j], (int)(ff[j] > 0));
    		}
    	}
    	string ret = "";
    	for (i = 0; i < n; ++i)
    		switch (f[i]) {
    		case 0:
    			ret += "-";
    			break;
    		case 1:
    			ret += '?';
    			break;
    		case 2:
    			ret += '+';
    			break;
    		}
    	return ret;
    }
    
  • 相关阅读:
    不要给技术人员做绩效
    软件开发项目的风险
    cxgrid在当前View插入记录
    cxgrid根据单元的值设置样式
    有锐捷客户端的情况下用虚拟机照样上网
    cxgrid在内置右键菜单的后面增加菜单项
    cxgrid按条件计算合计值
    cxgrid在内置右键菜单的后面增加菜单项
    微信小程序弹窗 Mr
    虚拟环境的创建 Mr
  • 原文地址:https://www.cnblogs.com/hsuppr/p/3118642.html
Copyright © 2020-2023  润新知