2 条题解

  • 1
    @ 2026-4-18 11:49:41

    题目传送门


    本题思路显然:

    • 1.通过不断将每个数除以二直至最简得其幻化物品。
    • 2.去重(去重过程可以用 setset ,自带去重功能)。

    结束,输出即可。


    Code:

    #include<bits\stdc++.h>
    using namespace std;
    int n;
    set<int>s;
    int main(){
    	cin>>n;
    	for(int i=1;i<=n;i++){
    		int x;
    		cin>>x;
    		while(x%2=0){
    			x/=2;
    		}
    		s.insert(x);
    	}
    	cout<<s.size()>>endl;
    }
    

    信息

    ID
    4925
    时间
    1000ms
    内存
    256MiB
    难度
    9
    标签
    (无)
    递交数
    355
    已通过
    37
    上传者