【二分或者STL】

二分:

#include<bits/stdc++.h>
using namespace std;
const int maxn=;
int a[maxn];
int main()
{
int K,N,i,cnt=,pos;
scanf("%d%d",&K,&N);
for(i=;i<=N;i++) scanf("%d",&a[i]);
sort(a+,a+N+);
for(i=;i<=N;i++){
pos=lower_bound(a+,a+N+,K-a[i])-a;
if(pos>i&&a[pos]==K-a[i]) printf("%d %d\n",a[i],K-a[i]),cnt++;
}
if(cnt==) puts("No Solution");
return ;
}

set:

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<algorithm>
#include<cstring>
#include<set>
using namespace std;
int k,n,a[],s,q,flag;
set<int>st;
int main()
{
flag=;
cin>>k>>n;
for(int i=;i<=n;i++)
{
scanf("%lld",&s);
a[i]=s;
st.insert(s);
}
sort(a+,a++n);
set<int>::iterator j;
for(int i=;i<=n;i++)
{
q=k-a[i];
j=st.find(q);
if(j==st.end()) continue;
else{
if(*j>a[i])
{
flag=;
printf("%d %d\n",a[i],*j);
}
}
}
if(flag==) puts("No Solution");
return ;
}

【B:贪心题】

#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=;
int a[maxn];
int main()
{
int N,i,j; ll ans=;
scanf("%d",&N);
for(i=;i<=N;i++) scanf("%d",&a[i]);
sort(a+,a+N+);
for(i=;i<=N;i++) a[i]+=a[i-],ans+=a[i];
printf("%lld\n",ans);
return ;
}

【C:暴力】

#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=1e6+;
ll sum[maxn];
bool check(int x)
{
if(x%==) return true;
while(x){
if(x%==) return true;
x/=;
} return false;
}
void solve()
{
for(int i=;i<maxn;i++){
sum[i]=sum[i-];
if(!check(i)) sum[i]+=(ll)i*i;
}
}
int main()
{
solve();
int T,N;
scanf("%d",&T);
while(T--){
scanf("%d",&N);
printf("%lld\n",sum[N]);
}
return ;
}

【D:欧拉函数】

#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll ans;
ll getphi(int x)
{
int res=x;
for(int i=;i*i<=x;i++){
if(x%i==){
res=res/i*(i-);
while(x%i==) x/=i;
}
}
if(x>) res=res/x*(x-);
return res;
}
int main()
{
int N; scanf("%d",&N);
for(int i=;i*i<=N;i++){
if(N%i==) {
ans+=getphi(N/i)*i;
if(i*i!=N) ans+=getphi(i)*(N/i);
}
}
printf("%lld\n",ans);
return ;
}

【E:容斥】

#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=;
int p[maxn+],cnt;
short int vis[maxn+],mu[maxn+];
void read(int &x){
x=; char c=getchar();
while(c>''||c<'') c=getchar();
while(c>=''&&c<='') x=(x<<)+(x<<)+c-'',c=getchar();
}
void Put(ll x)
{
if(x>) Put(x/);
putchar(x%+'');
}
void prime()
{
mu[]=; for(int i=;i<=maxn;i++){
if(!vis[i]) p[++cnt]=i,mu[i]=-;
for(int j=;j<=maxn&&i*p[j]<=maxn;j++){
vis[i*p[j]]=; mu[i*p[j]]=-mu[i];
if(i%p[j]==) { mu[i*p[j]]=; break; }
}
}
}
int a[],num[maxn+];ll ans;
vector<int>G[maxn+];
int main()
{
prime();
int N,Q,x,i,j,Max=;
scanf("%d%d",&N,&Q);
for(i=;i<=N;i++) read(a[i]),Max=max(Max,a[i]),vis[i]=;
for(i=;i<=Max;i++){
for(j=i;j<=Max;j+=i)
G[j].push_back(i);
}
while(Q--){
read(x);
int L=G[a[x]].size();
if(vis[x]==){
for(i=;i<L;i++) num[G[a[x]][i]]--;
for(i=;i<L;i++) ans-=mu[G[a[x]][i]]*num[G[a[x]][i]];
}
else {
for(i=;i<L;i++) ans+=mu[G[a[x]][i]]*num[G[a[x]][i]];
for(i=;i<L;i++) num[G[a[x]][i]]++;
}
vis[x]=vis[x]^;
Put(ans); puts("");
}
return ;
}

【CQ18高一暑假前挑战赛4】标程的更多相关文章

  1. 【CQ18高一暑假前挑战赛5】标程

    [A:暴力] #include<bits/stdc++.h> using namespace std; ; int a[maxn],vis[maxn],N,M; int main() { ...

  2. 【CQ18高一暑假前挑战赛3.5】标程

    [A:快速幂相关] #include<bits/stdc++.h> using namespace std; int qpow(int a,int x){ a%=;; while(x){ ...

  3. 【CQ18高一暑假前挑战赛3】标程

    [A:LCM] #include<bits/stdc++.h> using namespace std; #define ll long long int main() { ll a,b, ...

  4. 【CQ18高一暑假前挑战赛2】标程

    [昨晚打校赛,5个小时打完很累了,所以搞忘出题了...对不起学弟们,不过出的题都亲自写过一遍,可以保证题目和代码长度都不长,题目难度不大] [A:bush博弈] #include<bits/st ...

  5. 【CQ18高一暑假前挑战赛1】标程

    [A] #include<bits/stdc++.h> using namespace std; #define ll long long ll qpow(ll a,ll x,ll Mod ...

  6. [转]关于一些SPFA的标程

    SPFA算法 求单源最短路的SPFA算法的全称是:Shortest Path Faster Algorithm. 最短路径快速算法-SPFA算法是西南交通大学段凡丁于1994年发表的. 适用范围:给定 ...

  7. [求助][SPOJ MARIOGAM]-高斯消元(内含标程,数据等)

    小蒟蒻开始做概率的题之后,遇到了这道题,然而,他发现自己的程序调试了无数次也无法通过,系统总是返回令人伤心的WA, 于是,他决定把这一天半的时间收集到的资料放在网上, 寻求大家的帮助, 也可以节省后来 ...

  8. hdu6435 Problem J. CSGO标程讲解以及改正标程的一个错误(本来第一个样例过不了2333) 以及 poj2926 五维曼哈顿距离模板

    比赛的时候抄poj2926的模板,但改不来啊orz #include <iostream> #include <cstdio> #include <cstring> ...

  9. 暑假前的flag

    暑假到了,为了简便新开了一个博客,供暑假刷体放一些题解,玩acm1年多了,cf还是蓝名,真是菜的一笔,明年就大三了,马上就要毕业了,然而还是啥也不会,兼职和智障没什么两样,当初大一吹的牛逼说要成为学校 ...

随机推荐

  1. solr 最佳实践

    管理页面 页面地址:http://{ip}:{port}/solr/#/ 管理页面的data-import页可以手动重建索引,configuration指定了数据源,重建索引也可以通过http请求触发 ...

  2. com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database &#39;user&#39;

    1.错误描写叙述 2014-7-12 21:06:05 com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource getPoolManager 信息: ...

  3. less 项目实战

    1.注释 less 的注释有两种方法,"/**/" 和 "//",前一种会在 css 文件中显示,后一种不会在 css 显示. 2.定义变量的方法:" ...

  4. vue 给组件绑定原生事件

    有时候,你可能想在某个组件的根元素上监听一个原生事件.可以使用 v-on 的修饰符 .native.例如: <my-component v-on:click.native="doThe ...

  5. VC++的窗口句柄和窗口ID

    原文地址:VC++的窗口句柄和窗口ID作者:放放 句柄是窗口资源的标识,它标识资源在系统中所占用的内存块,应用程序通过窗口句柄对窗口进行操作.除了窗口句柄之外,任何一种资源都有它自己的句柄,比如光标句 ...

  6. iOS_隐藏顶部状态栏

    iOS6和iOS7在隐藏 Status Bar 三种方式比較: Storyboard 界面上选中UIViewController,最右边Simulated Metrics找到 Status Bar 设 ...

  7. dos alias/cname address

    diego@localhost sdk/include/Poco/Net]# dig b.wpss.cn ; <<>> DiG - <<>> b.wps ...

  8. cocos2dx3.0 对象池

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdzE4NzY3MTA0MTgz/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...

  9. 【每日Scrum】第三天(4.13) TD学生助手Sprint1站立会议

    TD学生助手Sprint1站立会议(4.13) 任务看板 站立会议内容 组员 昨天 今天 困难 签到 刘铸辉 (组长) 昨天完成了课程的增删改查功能 今天早晨静姐调整了下界面和配色,下午和宝月兄一起做 ...

  10. c语言知识点总结-------静态区、堆、栈、常量区等

    在C语言中地址占4个字节 1.编程语言发展 低级语言----->高级语言 机器语言 ---> 汇编---->高级语言(C语言.C++.JAVA等) 机器语言 :0101 0010 1 ...