| | Common Boardint main(){
 optimize();
 int n,k;
 cin>>n>>k;
 k--;
 int z=k;
 bool b=0;
 int a[n+10];
 for(int i=0;i<n;i++)
 {
 if(k!=0)
 {
 if(b==0)
 {
 a[i]=k;
 b=1;
 z--;
 }
 else
 {
 if(z==0)
 {
 a[i]=0;
 k=0;
 b=1;
 continue;
 }
 a[i]=-k;
 k--;
 b=0;
 z--;
 if(z==0)
 k=0;
 }
 }
 else
 a[i]=0;
 //dbg(z);
 }
 for(int i=n-1;i>=0;i--)
 cout<<a[i]<<" ";
 //return main();
 }
 
 when going to print 0 0 -3 3  or  -3 3 0 0 I am getting WA..But When I print 0 0 -1 1 I get AC..Why?what is the difference between 1st two case and last one??Can anyone explain me??
Thanks to Oleksandr Kulkov for preparing! Thanks I almost have no problem to do on uralwhy is  k =10 and n =2 output =90#include <stdio.h>#include <stdlib.h>
 #include <math.h>
 int main() {
 unsigned long long k[4];
 for(int i=0;i<4;i++){
 scanf("%llu",&k[i]);
 
 }
 printf("\n");
 printf("%.4f\n",sqrt(k[3]));
 printf("%.4f\n",sqrt(k[2]));
 printf("%.4f\n",sqrt(k[1]));
 printf("%.4f\n",sqrt(k[0]));
 return 0;
 }
 
 Ошибка на тесте 2 /Error in test 2
 
 Edited by author 09.09.2018 15:45
 Во входном потоке может быть любое количество чисел, а не только четыре.Почините алгоритм проверки! Не контачит на сях. Вот код:#include <stdio.h>
 
 int main(int argc, char const *argv[])
 {
 int a, b;
 a=1, b=5;
 printf("%i\n", a+b);
 return 0;
 }
 а с чего ты взял что вводимые данные будут целочисленные?В этом коде не считываются a и b из входного потока.
 Edited by author 23.09.2018 18:34
Hello, everyone. Just wanted to summarize some info about this problem. Ok, my code got AC with following things in it: 1. My pi was 3.1415926535897932384626433 (perhaps it is enough) 2. I used this formula from wikipedia deltaArc=acos(sin(phiA)*sin(phiB)+cos(phiA)*cos(phiB)*cos(deltaL)); distance = deltaArc*3437.5; (see the first formula from wikipedia http://en.wikipedia.org/wiki/Great-circle_distance) 3. I used the following condition: if(100.00-distance>0.005) printf("DANGER!\n"); Hope it will help somebody.thanks a lot ...your formula is really useful.^_^Used everynth what is written here. However still WA8.Any new ideas?...
Do u know that pi can be calculated by this formula: atan(1) * 4?1)Solution always exists and his complexity <= O(n^2)2)Try to solve the problem when the permutation is n (n-1) ... (n-left+1) 1 2 3 ... right where
 left+right=n.
 After O(n^2) steps you can get n 1 2 3 ... (n-1).
 Then after O(n^2) steps you can get 1 2 3 ... n.
 3)Try to reduce the problem to this permutation by O(n^2) steps.
 4)Good to know: 1 2 3 ... t x-> 2 1 3 ... t x -> 3 1 2 4 ... t x -> 4 1 2 3 5 ... t x ->... ->
 t 1 2 3 ... (t-1) x -> x 1 2 3 ... t by t steps. I call this operation "Shift(t)".
 
 Edited by author 26.07.2018 20:20
 simplest solution:i=0..n-1 : while p[i] <> n do  change(p[i]);
 
 Edited by author 22.09.2018 14:02
I can't think of a way to store goto and fail transitions of so many vertices and avoid MLE. please help.
 here's code:
 
 #include <stdio.h>
 #include <queue>
 using namespace std;
 short g[110000][256];
 short f[110000];
 short o[110000];
 short n,m,newstate=0;
 queue<short>Q;
 int main(void){
 short i,pos=0,q,r,u,v,ch,state;
 scanf("%hd",&n);getchar();
 for(i=1;i<=n;++i){
 r=0;
 ch=getchar();
 state=0;
 ++r;
 ch+=128;
 while(g[state][ch]){
 state=g[state][ch];
 ch=getchar();
 ++r;
 ch+=128;
 }
 while(ch!='\n'+128){
 newstate=newstate+1;
 g[state][ch]=newstate;
 state=newstate;
 ch=getchar();
 ++r;
 ch+=128;
 }
 o[state]=r-1;
 }
 for(i=0;i<256;++i){
 if(q=g[0][i]){
 f[q]=0;
 Q.push(q);
 }
 }
 while(!Q.empty()){
 r=Q.front();
 Q.pop();
 for(i=0;i<256;++i){
 u=g[r][i];
 if(!(u==0&&r>0)){
 Q.push(u);
 v=f[r];
 while(g[v][i]==0&&v>0) v=f[v];
 f[u]=g[v][i];
 if(o[u]==0) o[u]=o[f[u]];
 }
 }
 }
 scanf("%hd",&m);getchar();
 for(i=1;i<=m;++i){
 q=0;r=0;
 while((ch=getchar())!='\n'){
 ch+=128;
 ++r;
 while(g[q][ch]==0&&q>0) q=f[q];
 q=g[q][ch];
 if(o[q]){
 printf("%hd %hd",i,r-o[q]+1);
 return 0;
 }
 }
 }
 printf("Passed\n");
 return 0;
 }
 you got pretty close, modified your solution to get AC. let me know if you need hints :) ikhomeriki@gmail.com
 Edited by author 21.09.2018 23:04
For TC:abracadabra
 abrabracada
 
 why don't the prefixes are:
 abra abracada a?
 
 and also
 
 why for TC:
 abracadabra
 arbadacarba
 
 the prefix is not:
 a?
 why don't the prefixes are:abra abracada a?
 
 You can write this prefixes, this is the correct answer.
 
 why for TC:
 abracadabra
 arbadacarba
 
 the prefix is not:
 a?
 
 Because the word must consist entirely of prefixes.
#include <bits/stdc++.h>using namespace std;
 int main()
 {
 ios::sync_with_stdio(false);
 cin.tie(0);
 int n,count = 1;
 long long m, sum = 0;
 vector<long long> coll;
 vector<pair<long long, int>> coll1;
 cin >> n;
 while(n--)
 {
 cin >> m;
 coll.push_back(m);
 }
 m = coll[0];
 int i = 1;
 if(coll.size() > 3){
 for( ; i < coll.size(); ++i)
 {
 if(m <= coll[i] && count < 3)
 {
 count++;
 } else
 if( i>=3)
 {
 sum += coll[i-1];
 sum += coll[i-2];
 sum += coll[i-3];
 coll1.push_back({sum, i-1});
 sum = 0;
 count = 1;
 }
 m = coll[i];
 }
 sort(coll1.begin(), coll1.end());
 cout << coll1[coll1.size()-1].first << ' ' << coll1[coll1.size()-1].second  << endl;
 } else
 cout << accumulate(coll.begin(), coll.end(), 0) << ' '<<'2' << endl;
 coll.clear();
 coll1.clear();
 return 0;
 }
Irakli Khomeriki Stats 21 Sep 2018 01:24 It would be awesome to have stats for each task, like best/average time/memory of AC-ed solutions for each language.4 00 0 0 0
 
 Edited by author 23.05.2007 21:03
 thanks, buddy it helped meuse  ios_base::sync_with_stdio(false); cin.tie(0); with cin/cout. Don't forget to add last two digit's sum carry if it has. 5M is too much. It isn't necessary to get whole numbers in memory.if you read data as:double x;
 cin>>x;
 a[i]=x*100;
 it doesn't work!
n = int(input())
 l = list(map(int, input().split()))
 l1 = []
 
 for i in range(n):
 l1.append((l[i]//2 +1))
 
 if n > 3:
 k = (n // 2 + 1) // 2 + 1 #Groups which decline
 else:
 k = (n // 2 + 1) // 2
 
 for i in range(k):
 l1.remove(max(l1))
 
 print(sum(l1))
 
 
 Edited by author 15.09.2018 21:04
 Just simplify ur code. This is very easy task. Bellow there is my ac solution:[code deleted]
 
 Edited by moderator 20.11.2019 00:09
x[i] - y[i] = a * i + b
 x[i-1] - y[i-1] = a * (i-1) + b
 
 ------------------------------------
 
 x[i] - x[i-1]  - ( y [i] - y[i-1] ) = a
 
 
 
 Let x1[i] = x[i] - x[i-1], i > 0. and y1[i] = y[i] - y[i-1], for i>0.
 
 
 so ,
 
 x1[i] - y1[i] = a,  a = x1[0] - y1[0].
 
 x1[i-1] - y1[i-1] = a
 -------------------------------
 x1[i]  - x1[i-1] - (y1[i ] - y1[i-1]) = 0  or,
 
 x1[i] - x1[i-1] = y1[i] - y1[i-1]
 
 Let x2[i] = x1[i] - x1[i-1] = x[i] - 2*x[i-1] + x[i-2], for i>1. and
 y2[i] = y1[i] - y1[i-1] = y[i] - 2*y[i-1] + y[i-2], for i>1.
 
 so  x2[i] = y2[i],  for all 1 < i <= n.
 
 Use KMP.
 
 I didn't try this, yet ).
 
 
 | 
 |