zoukankan      html  css  js  c++  java
  • 【Codeforces Round #442 (Div. 2) C】Slava and tanks

    【链接】 我是链接,点我呀:)
    【题意】

    有n个位置,每个位置都可能有不定数量的tank; 你每次可以选择一个位置投掷炸弹。 并且,这个位置上的所有tank都会受到你的攻击。 并且失去一点体力。 然后它们可能会往左走一格,或者往右走一格。 每个tank的体力都为2. 问你打掉所有的tank最坏情况要多少次轰炸操作。然后输出所有的轰炸位置。

    【题解】

    在2,4,6...轰炸 然后在1,3,5...轰炸 最后在2,4,6轰炸。 可以保证每个tank都被炸死。

    【代码】

    #include <bits/stdc++.h>
    using namespace std;
    
    int n,flag;
    vector <int> ans;
    
    int main(){
    //	freopen("rush.txt","r",stdin);
    	
    	scanf("%d",&n);
    	flag = n&1;
    	if (flag==0){
    		for (int i = 1;i <= n;i+=2)
    			ans.push_back(i);
    		for (int i = 2;i <= n;i+=2)
    			ans.push_back(i);
    		for (int i = 1;i <= n;i+=2)
    			ans.push_back(i);
    	}else{
    		for (int i = 2;i <= n;i+=2)
    			ans.push_back(i);
    		for (int i = 1;i <= n;i+=2)
    			ans.push_back(i);
    		for (int i = 2;i <= n;i+=2)
    			ans.push_back(i);
    	}
    	printf("%d
    ",(int) ans.size());
    	for (int i = 0;i <(int) ans.size();i++)
    		printf("%d ",ans[i]);
    	puts("");
    	return 0;
    }
    
  • 相关阅读:
    FZU 2150 Fire Game
    POJ 3414 Pots
    POJ 3087 Shuffle'm Up
    POJ 3126 Prime Path
    POJ 1426 Find The Multiple
    POJ 3278 Catch That Cow
    字符数组
    HDU 1238 Substing
    欧几里德和扩展欧几里德详解 以及例题CodeForces 7C
    Codeforces 591B Rebranding
  • 原文地址:https://www.cnblogs.com/AWCXV/p/7721718.html
Copyright © 2011-2022 走看看